This document discusses how networking is overrated and reputation is more important. It defines reputation as being remembered for contributions over time rather than just exchanging business cards. The benefits of a good reputation are that people will remember, recommend, and offer opportunities to someone. Developing skills, managing online presence, and being a connector, curator, and creator of content can help build reputation. Overall reputation depends on both achievements that make one memorable as well as the size of their network to amplify their reputation.
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...CODE BLUE
We are swamped with new types of malware every day. The goal of malware analysis is not to reveal every single detail of the malware. It is more important to develop tools for efficiency or introduce automation to avoid repeating the same analysis process. Therefore, malware analysts usually actively develop tools and build analysis systems. On the other hand, it costs a lot for such tool developments and system maintenance. Incident trends change daily, and malware keeps evolving. However, it is not easy to keep up with new threats. Malware analysts spend a long time maintaining their analysis systems, and it results in reducing their time for necessary analysis of new types of malware.
To solve these problems, we incorporate DevOps practices into malware analysis to reduce the cost of system maintenance by using CI/CD and Serverless. This presentation shares our experience on how CI/CD, Serverless, and other cloud technologies can be used to streamline malware analysis. Specifically, the following case studies are discussed.
* Malware C2 Monitoring
* Malware Hunting using Cloud
* YARA CI/CD system
* Malware Analysis System on Cloud
* Memory Forensic on Cloud
Through the above case studies, we will share the benefits and tips of using the cloud and show how to build a similar system using Infrastructure as Code (IaC). The audience will learn how to improve the efficiency of malware analysis and build a malware analysis system using Cloud infrastructure.
ECS (Part 1/3) - Introduction to Data-Oriented DesignPhuong Hoang Vu
ECS (Part 1/3) - Introduction to Data-Oriented Design.
Some small experiments to verify CPU Cache problems, SOA vs AOS and some other problems from OOP approach.
Then basic things about DOD.
This document provides an introduction to red team operations from the perspective of a penetration tester transitioning to become a red teamer. It discusses some of the key differences between penetration testing and red teaming such as scope, reconnaissance required, stealth, and infrastructure setup. The document outlines principles for red team operations including protecting infrastructure, logging everything, managing information, and avoiding detection. It also provides examples of tactics, techniques and procedures used in red team operations as well as considerations for tools like Cobalt Strike to help evade detection.
[cb22] Fight Against Malware Development Life Cycle by Shusei Tomonaga and Yu...CODE BLUE
We are swamped with new types of malware every day. The goal of malware analysis is not to reveal every single detail of the malware. It is more important to develop tools for efficiency or introduce automation to avoid repeating the same analysis process. Therefore, malware analysts usually actively develop tools and build analysis systems. On the other hand, it costs a lot for such tool developments and system maintenance. Incident trends change daily, and malware keeps evolving. However, it is not easy to keep up with new threats. Malware analysts spend a long time maintaining their analysis systems, and it results in reducing their time for necessary analysis of new types of malware.
To solve these problems, we incorporate DevOps practices into malware analysis to reduce the cost of system maintenance by using CI/CD and Serverless. This presentation shares our experience on how CI/CD, Serverless, and other cloud technologies can be used to streamline malware analysis. Specifically, the following case studies are discussed.
* Malware C2 Monitoring
* Malware Hunting using Cloud
* YARA CI/CD system
* Malware Analysis System on Cloud
* Memory Forensic on Cloud
Through the above case studies, we will share the benefits and tips of using the cloud and show how to build a similar system using Infrastructure as Code (IaC). The audience will learn how to improve the efficiency of malware analysis and build a malware analysis system using Cloud infrastructure.
ECS (Part 1/3) - Introduction to Data-Oriented DesignPhuong Hoang Vu
ECS (Part 1/3) - Introduction to Data-Oriented Design.
Some small experiments to verify CPU Cache problems, SOA vs AOS and some other problems from OOP approach.
Then basic things about DOD.
This document provides an introduction to red team operations from the perspective of a penetration tester transitioning to become a red teamer. It discusses some of the key differences between penetration testing and red teaming such as scope, reconnaissance required, stealth, and infrastructure setup. The document outlines principles for red team operations including protecting infrastructure, logging everything, managing information, and avoiding detection. It also provides examples of tactics, techniques and procedures used in red team operations as well as considerations for tools like Cobalt Strike to help evade detection.
This document summarizes information on various poisons, including arsenic, mercury, copper sulfate, lead acetate, aluminium phosphide, aconite, nicotine, digitalis, croton tiglium, ricin, abrus precatorius, semecarpus anacardium, datura, opium, cannabis indica, nux vomica, and alcohol. For each poison, it provides the fatal dose, fatal period, antidotes, and potential medicolegal importance. The document serves as a reference for poison identification and treatment.
This document summarizes key rendering features in CryEngine 3 and Crysis 2 across PC and console platforms. It discusses gamma correct HDR rendering, lighting, shadows, screen space ambient occlusion and global illumination, deferred decals, character rendering, water rendering, post-processing effects like motion blur, anti-aliasing using post MSAA, system specifications and colors matching across platforms, and stereo rendering. It highlights the engineering efforts required to optimize the engine for consoles while maintaining quality and pushing technological limits on all platforms.
Game engines have long been in the forefront of taking advantage of the ever
increasing parallel compute power of both CPUs and GPUs. This talk is about how the
parallel compute is utilized in practice on multiple platforms today in the Frostbite game
engine and how we think the parallel programming models, hardware and software in
the industry should look like in the next 5 years to help us make the best games possible.
Presentation from DICE Coder's Day (2010 November) by Andreas Fredriksson in the Frostbite team.
Goes into detail about Scope Stacks, which are a systems programming tool for memory layout that provides
• Deterministic memory map behavior
• Single-cycle allocation speed
• Regular C++ object life cycle for objects that need it
This makes it very suitable for games.
IGC 2017과 시작해요 언리얼 2017에서 발표를 한 '오버턴 VR 개발기 - 1인 개발 3년차 리포트' 입니다.
오버턴을 개발하면서 있었던 이야기를 담고 있고
VR 게임을 개발하기 위한 노하우를 최대한 이야기하였습니다.
그러면서 1인 독립 개발을 하면서 느꼈던 점들을
발표하였으니 도움이 되셨으면 좋겠습니다.
피드백은 아래 SNS로 부탁드립니다.
https://twitter.com/Hanguny
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...Shakacon
While Kerberos "Golden Tickets" and "Silver Tickets" received a lot of press in the second half of 2014, there hasn't been much detail provided on how exactly they work, why they are successful, and how to mitigate them (other than: "don't get pwned"). Golden Tickets are the ultimate method for persistent, forever AD admin rights to a network since they are valid Kerberos tickets and can't be detected, right?
This talk covers the latest Active Directory attack vectors and describes how to detect Golden Ticket usage. Provided are key indicators that can detect Kerberos attacks on your network, including Golden tickets, Silver tickets & MS14-068 exploitation, as well as methods to identify, mitigate, and prevent common Active Directory attack vectors. When forged Kerberos tickets are used in AD, there are some interesting artifacts that can be identified. Yes, despite what you may have read on the internet, there are ways to detect Golden & Silver Ticket usage!
Some of the topics covered:
How attackers go from zero to (Domain) Admin
MS14-068: the vulnerability, the exploit, and the danger
"SPN Scanning" with PowerShell to identify potential targets without network scans (SQL, Exchange, FIM, webservers, etc.)
Exploiting weak service account passwords as a regular AD user
Mimikatz, the attacker's multi-tool
Using Silver Tickets for stealthy persistence that won’t be detected (until now)
Identifying forged Kerberos tickets (Golden & Silver Tickets) on your network
Detecting offensive PowerShell tools like Invoke-Mimikatz
Active Directory attack mitigation
Kerberos expertise is not required since the presentation covers how Active Directory leverages Kerberos for authentication identifying the areas useful for attack. Information presented is useful for both Red Team & Blue Team members as well as AD administrators.
Custom SRP and graphics workflows - Unite Copenhagen 2019Unity Technologies
The document discusses custom graphics workflows used in the game "Battle Planet - Judgement Day". It describes how a custom Scriptable Render Pipeline (SRP) was implemented to render the spherical planets with matcaps and indirect lighting. Key aspects summarized include using multiple passes for lighting and shadows, shader libraries for shared lighting code, and stateless systems for decals and projectiles to improve performance.
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsColin Barré-Brisebois
An extended version from the GDC14 "Deformable Snow Rendering in Batman: Arkham Origins" talk. This talk focuses on several DirectX 11 features developed/integrated in collaboration with NVIDIA. Tessellation and how the integration NVIDIA GameWorks with features such as physically-based particles with PhysX, particle fields with Turbulence, HBAO+, and bokeh DOF is also presented. Other improvements are also showcased: Reoriented Normal Mapping and chroma subsampling pipeline improvements.
DNS hijacking using cloud providers – No verification neededFrans Rosén
This is my talk from OWASP Appsec EU and also Security Fest 2017.
A few years ago, Frans and his team posted an article on Detectify Labs regarding domain hijacking using services like AWS, Heroku and GitHub. These issues still remains and are still affecting a lot of companies. Jonathan Claudius from Mozilla even calls “Subdomain takeover” “the new XSS”. Since then, many tools have popped up to spot these sorts of vulnerabilities. Frans will go through both the currently disclosed and the non-disclosed ways to take control over domains and will share the specific techniques involved.
[IGC 2017] 펄어비스 민경인 - Mmorpg를 위한 voxel 기반 네비게이션 라이브러리 개발기강 민우
펄어비스의 MMORPG, 검은사막에 적용되어있는 AI 네비게이션 기능은 VOXEL 기반으로 자체 개발한 엔진을 이용해 구현되어 있습니다. 기존의 대다수 상용 라이브러리들이 네비 메쉬라고 하는 이동가능한 평면을 표현하는 폴리곤 기반의 데이터를 이용해 길찾기를 수행해주는 것에 비해 근간이 다릅니다. 이 강연에서는 검은사막의 네비게이션 엔진을 구현하고, 서버 / 클라이언트에 적용하면서 얻게된 노하우와 적용된 결과물들을 소개합니다.
Useful guidelines about how to manage and develop your personal reputation. Practical advice about how to create opportunities by generating value to the people in your professional network.
This document summarizes information on various poisons, including arsenic, mercury, copper sulfate, lead acetate, aluminium phosphide, aconite, nicotine, digitalis, croton tiglium, ricin, abrus precatorius, semecarpus anacardium, datura, opium, cannabis indica, nux vomica, and alcohol. For each poison, it provides the fatal dose, fatal period, antidotes, and potential medicolegal importance. The document serves as a reference for poison identification and treatment.
This document summarizes key rendering features in CryEngine 3 and Crysis 2 across PC and console platforms. It discusses gamma correct HDR rendering, lighting, shadows, screen space ambient occlusion and global illumination, deferred decals, character rendering, water rendering, post-processing effects like motion blur, anti-aliasing using post MSAA, system specifications and colors matching across platforms, and stereo rendering. It highlights the engineering efforts required to optimize the engine for consoles while maintaining quality and pushing technological limits on all platforms.
Game engines have long been in the forefront of taking advantage of the ever
increasing parallel compute power of both CPUs and GPUs. This talk is about how the
parallel compute is utilized in practice on multiple platforms today in the Frostbite game
engine and how we think the parallel programming models, hardware and software in
the industry should look like in the next 5 years to help us make the best games possible.
Presentation from DICE Coder's Day (2010 November) by Andreas Fredriksson in the Frostbite team.
Goes into detail about Scope Stacks, which are a systems programming tool for memory layout that provides
• Deterministic memory map behavior
• Single-cycle allocation speed
• Regular C++ object life cycle for objects that need it
This makes it very suitable for games.
IGC 2017과 시작해요 언리얼 2017에서 발표를 한 '오버턴 VR 개발기 - 1인 개발 3년차 리포트' 입니다.
오버턴을 개발하면서 있었던 이야기를 담고 있고
VR 게임을 개발하기 위한 노하우를 최대한 이야기하였습니다.
그러면서 1인 독립 개발을 하면서 느꼈던 점들을
발표하였으니 도움이 되셨으면 좋겠습니다.
피드백은 아래 SNS로 부탁드립니다.
https://twitter.com/Hanguny
Red vs Blue- Modern Atice Directory Attacks, Detection & Protection by Sean M...Shakacon
While Kerberos "Golden Tickets" and "Silver Tickets" received a lot of press in the second half of 2014, there hasn't been much detail provided on how exactly they work, why they are successful, and how to mitigate them (other than: "don't get pwned"). Golden Tickets are the ultimate method for persistent, forever AD admin rights to a network since they are valid Kerberos tickets and can't be detected, right?
This talk covers the latest Active Directory attack vectors and describes how to detect Golden Ticket usage. Provided are key indicators that can detect Kerberos attacks on your network, including Golden tickets, Silver tickets & MS14-068 exploitation, as well as methods to identify, mitigate, and prevent common Active Directory attack vectors. When forged Kerberos tickets are used in AD, there are some interesting artifacts that can be identified. Yes, despite what you may have read on the internet, there are ways to detect Golden & Silver Ticket usage!
Some of the topics covered:
How attackers go from zero to (Domain) Admin
MS14-068: the vulnerability, the exploit, and the danger
"SPN Scanning" with PowerShell to identify potential targets without network scans (SQL, Exchange, FIM, webservers, etc.)
Exploiting weak service account passwords as a regular AD user
Mimikatz, the attacker's multi-tool
Using Silver Tickets for stealthy persistence that won’t be detected (until now)
Identifying forged Kerberos tickets (Golden & Silver Tickets) on your network
Detecting offensive PowerShell tools like Invoke-Mimikatz
Active Directory attack mitigation
Kerberos expertise is not required since the presentation covers how Active Directory leverages Kerberos for authentication identifying the areas useful for attack. Information presented is useful for both Red Team & Blue Team members as well as AD administrators.
Custom SRP and graphics workflows - Unite Copenhagen 2019Unity Technologies
The document discusses custom graphics workflows used in the game "Battle Planet - Judgement Day". It describes how a custom Scriptable Render Pipeline (SRP) was implemented to render the spherical planets with matcaps and indirect lighting. Key aspects summarized include using multiple passes for lighting and shadows, shader libraries for shared lighting code, and stateless systems for decals and projectiles to improve performance.
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsColin Barré-Brisebois
An extended version from the GDC14 "Deformable Snow Rendering in Batman: Arkham Origins" talk. This talk focuses on several DirectX 11 features developed/integrated in collaboration with NVIDIA. Tessellation and how the integration NVIDIA GameWorks with features such as physically-based particles with PhysX, particle fields with Turbulence, HBAO+, and bokeh DOF is also presented. Other improvements are also showcased: Reoriented Normal Mapping and chroma subsampling pipeline improvements.
DNS hijacking using cloud providers – No verification neededFrans Rosén
This is my talk from OWASP Appsec EU and also Security Fest 2017.
A few years ago, Frans and his team posted an article on Detectify Labs regarding domain hijacking using services like AWS, Heroku and GitHub. These issues still remains and are still affecting a lot of companies. Jonathan Claudius from Mozilla even calls “Subdomain takeover” “the new XSS”. Since then, many tools have popped up to spot these sorts of vulnerabilities. Frans will go through both the currently disclosed and the non-disclosed ways to take control over domains and will share the specific techniques involved.
[IGC 2017] 펄어비스 민경인 - Mmorpg를 위한 voxel 기반 네비게이션 라이브러리 개발기강 민우
펄어비스의 MMORPG, 검은사막에 적용되어있는 AI 네비게이션 기능은 VOXEL 기반으로 자체 개발한 엔진을 이용해 구현되어 있습니다. 기존의 대다수 상용 라이브러리들이 네비 메쉬라고 하는 이동가능한 평면을 표현하는 폴리곤 기반의 데이터를 이용해 길찾기를 수행해주는 것에 비해 근간이 다릅니다. 이 강연에서는 검은사막의 네비게이션 엔진을 구현하고, 서버 / 클라이언트에 적용하면서 얻게된 노하우와 적용된 결과물들을 소개합니다.
Useful guidelines about how to manage and develop your personal reputation. Practical advice about how to create opportunities by generating value to the people in your professional network.
The presentation is part of Job hunting skills training program, focused on personal branding and job hunting tips, it gives the reader information on how to develop and maintain a good personal brand, how it helps him in finding a deserving job and further talks on techniques and tips on how to find a suitable job.
This document summarizes Robin Frank's presentation on creating a personal brand and networking for career success. The presentation covers developing a unique personal brand with a clear message, passion, and goals. It discusses the importance of an engaging online presence on LinkedIn and social media to establish expertise and be memorable. Specific tips are provided for crafting an effective personal profile, building connections, and using LinkedIn to find referrals and opportunities through strategic networking.
Presentation for women returning to the workforce on how to develop and navigate your personal brand. Includes personal branding exercises to develop a compelling and memorable personal brand; comprehensive LinkedIn profile strategies; social media profile tips; tips for interviewing success.
Personal Branding Create Your Plan, Promote Your BrandSeuss+
You’ll learn the importance of personal branding and the impact it has on your career. You’ll discover examples and exercises for how to identify, activate, and live your own unique brand and how it will positively impact your career path. You’ll learn about why it is important to have a personal brand, how to identify and build your personal brand, how to present, communicate, and live your personal brand, and how to incorporate your personal brand into your career goals.
Learn more about how Seuss+ can help you at our website www.seuss.plus
Robin Frank presented on creating an effective personal brand and using social media. The presentation covered developing a unique personal brand with a short mantra, tagline describing added value, and conveying one's passion. It emphasized transparency, memorability, and crafting an elevator pitch highlighting one's brand. LinkedIn optimization was discussed, including customizing one's URL, using a good profile photo, optimizing one's headline, and beefing up one's summary section. The presentation stressed using recommendations, networking through weak ties, and getting referrals through introductions on LinkedIn.
Networking and Personal Branding Using Social mediaAdityaKumar934440
This document discusses personal branding and networking using social media. It recommends developing a personal brand or mantra based on reflection of one's values, personality, skills, and audience. It then suggests using social media platforms like LinkedIn, Twitter, Facebook, and email signatures to promote this brand. The document also emphasizes the importance of networking both online through platforms like LinkedIn, and in-person at events using an elevator pitch. The goal is to manage one's online presence and network effectively for career and job opportunities.
The Power of LinkedIn: Building Your Profile & Leveraging ConnectionsGary Wood
Slides from an NMITE Springboard webinar held, 17 January 2023.
Learn how to create a strong, effective profile on LinkedIn, use it to build and engage a network, and to find and make opportunities.
This document discusses personal branding for recruiters. It defines personal branding as differentiating yourself through identifying your unique value and leveraging it consistently across online platforms. The key components of personal branding discussed are online reputation, positioning statement, LinkedIn profile, and social media activity. Maintaining a positive online presence and engaging consistently on relevant social media are important for recruiters to effectively engage with prospects and represent their employer brand.
LinkedIn For Good presents a training for workforce development and refugee-serving organizations who want to incorporate LinkedIn 101 into their existing training programs. Use this presentation to train your staff on how to talk about LinkedIn to newcomer populations.
This document discusses using social media in job searches. It provides tips on how social networking sites have become essential forums for advertising skills, establishing professional brands, networking, and identifying job opportunities. It recommends using social media to increase the visibility of one's professional profile and be seen by more potential employers. The document provides advice on choosing online presences, testing one's online presence, developing a professional brand, using social networking to improve one's online presence, creating an online presence to remain competitive in the job market, and tips for safe and effective social media use during a job search.
The document provides guidance on using LinkedIn effectively for job searching. It outlines two main goals: catching potential employers' attention by building out your profile with keywords and connections; and pitching yourself by connecting with others, such as recruiters, former coworkers, and influencers. The document offers tips for each section of the profile, using status updates to share relevant content, searching for connections through company pages and external sites, engaging with groups, and answering questions. The overall message is that LinkedIn is for both passive networking by optimizing your presence and active networking by reaching out to others.
LinkedIn is one the greatest tools available for professionals today. This webinar focused on how to maximize LinkedIn so that you move it from being a static resume repository to a career management tool – whether seeking advancement inside an organization or outside through a new job. This slide share illustrates some key features so you know more about how to successfully use LinkedIn.
The document provides tips for developing a personal brand, including determining your value proposition, defining your audience, managing your online presence on platforms like LinkedIn, networking, and preparing an elevator pitch. It emphasizes that personal branding is important because 85% of hiring managers consider a candidate's brand in decisions. Developing a clear, authentic personal brand can help one secure more interviews and promotions by communicating their unique strengths and values. The document also briefly discusses the "small world phenomenon" experiment which found that messages could travel through just six acquaintances on average.
Personal branding is the concept of perceiving yourself as a brand, that is, to associate your name with your field of expertise or others.
The following document describes the definition as well as some basic steps in order to establish your personal brand.
Raising your Professional NHS profile with LinkedInMichael Barker
The document provides tips for optimizing one's LinkedIn profile and networking effectively on LinkedIn. It recommends having a complete profile with an optimized headline and summary, regularly updating one's status, joining groups and participating in discussions, searching for companies and contacts, and leveraging features like recommendations, projects, and publications to differentiate oneself and generate business opportunities. The overall goal is to establish oneself as a thought leader in one's industry and fully utilize LinkedIn's networking and professional development capabilities.
Applications of Machine Learning - INDT WebinarHayim Makabee
INDT Webinar about Applications of Machine Learning.
In these slides Hayim Makabee presents several applications of Machine Learning and their impact on our lives, including Recommender Systems and Autonomous Vehicles, with several examples of recent innovations in the fields of Industry, Health and Agriculture.
In these slides Hayim Makabee presents several applications of Machine Learning and their impact on our lives, including Recommender Systems and Autonomous Vehicles.
This document describes Kashklik, an influencer marketing platform that aims to improve upon other platforms through increased automation, a focus on micro-influencers, and pay-for-performance models. It notes that traditional influencer marketing requires extensive manual effort from advertisers. Kashklik seeks to develop a fully automated platform that uses machine learning to match small and medium businesses with micro-influencers having 5k-100k followers. Rather than pay per post, Kashklik would offer a unique pay-click model where influencers are paid based on the results or performance of their campaigns. Charts are provided comparing Kashklik's desired attributes to other platforms on factors like automation, performance measurement, and pay-for-
Managing your Reputation Gvahim WebinarHayim Makabee
Useful guidelines about how to manage and develop your personal reputation. Practical advice about how to create opportunities by generating value to the people in your professional network. Presented by Hayim Makabee as a Gvahim Webinar on June 2020.
Automated machine learning (AutoML) systems can find the optimal machine learning algorithm and hyperparameters for a given dataset without human intervention. AutoML addresses the skills gap in data science by allowing data scientists to build more models in less time. On average, tuning hyperparameters results in a 5-10% improvement in accuracy over default parameters. However, the best parameters vary across problems. AutoML tools like Auto-sklearn use techniques like Bayesian optimization and meta-learning to efficiently search the hyperparameter space. Auto-sklearn has won several AutoML challenges due to its ability to effectively optimize over 100 hyperparameters.
The Story of a Young Oleh (Immigrant in Israel)Hayim Makabee
The Story of a Young Oleh (Immigrant in Israel) by Hayim Makabee
Presentation prepared for the Taglit groups (August 2018)
Taglit-Birthright Israel, also known as Birthright Israel or simply Birthright, is a not-for-profit educational organization that sponsors free ten-day heritage trips to Israel for young adults of Jewish heritage, aged 18–32.
Software Architecture for Agile DevelopmentHayim Makabee
Slides of a workshop given at Herzliya on June/2017, organized by ILTAM and IASA Israel. This workshop was dedicated to the topic of Software Architecture in the context of Agile Development. We answered the question: “How much Design Up Front should be done in an Agile project?” Hayim presented his approach of Adaptable Design Up Front (ADUF), describing its rationale, applications in practice and comparison to other approaches such as Emergent Design. He explained why adaptability is essential for the development of complex software systems using Agile methods. The concepts were illustrated through practical software architecture approaches such as micro-services and examples of real software systems that were developed in the past. The workshop also included an exercise on the definition and evolution of the design of an interesting system.
Adaptable Designs for Agile Software DevelopmentHayim Makabee
Abstract: This talk introduces the concept of Adaptable Software Design, and explains why adaptability is essential for the development of complex software systems using Agile methods. The concepts are illustrated through practical software architecture approaches such as micro-services.
This document discusses main applications of machine learning including clustering, classification, and recommendation. It provides examples of each type of application and how they are used. It also discusses failures of early machine learning systems that demonstrated racial or gender bias. Additionally, it outlines the typical machine learning process including feature engineering, learning/training, evaluation, and deployment phases. Key evaluation metrics for classification problems like accuracy, precision and recall are also covered.
The concept of Antifragility was introduced by Nassim Taleb to describe systems that benefit from impacts and volatility.
In this talk we will discuss how this concept may be applied in the field of Software Design with the goal of developing Change-Resilient Systems.
In particular we will address two patterns which frequently appear in Antifragile systems:
1) The Barbell Strategy and the importance of the separation between high-level abstract elements and concrete implementation details.
2) The Componentization Strategy and its applications in SOA, Microservices and Software Product Lines.
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
This document summarizes a study on developers' motivation to document code. Through interviews and surveys, researchers identified hindering and motivating factors for code documentation. Hindering factors included documentation being tedious, difficult, time-consuming, and interrupting coding work. Motivating factors included documentation improving code comprehensibility, order, and quality. The researchers propose designing a solution to encourage documentation by emphasizing motivating factors and mitigating hindering ones. They plan to further validate findings through a quantitative questionnaire. The goal is to increase developers' internal motivation to document code.
To document or not to document? An exploratory study on developers' motivatio...Hayim Makabee
Abstract: Technical debt represents the situation in a project where developers accept compromises in one dimension of a system in order to meet urgent demands in other dimensions. These compromises incur a “debt”, on which “interest” has to be paid to maintain the long-term health of the project. One of the elements of technical debt is documentation debt due to under-documentation of the evolving system. In this exploratory study, our goal is to examine the different aspects of developers' motivation to document code. Specifically, we aim to identify the motivating and hindering aspects of documentation as perceived by the developers. The motivating aspects of code documenting we find include improving code comprehensibility, order, and quality. The hindering aspects include developers’ perception of documenting as a tedious, difficult, and time consuming task that interrupts the coding process. These findings may serve as a basis for developing guidelines toward improving documentation practices and encouraging developers to document their code thus reducing documentation debt.
The SOLID Principles Illustrated by Design PatternsHayim Makabee
The goal of the SOLID design principles is to improve the Separation of Concerns, through weaker Coupling and stronger Cohesion. The main consequence should be software systems that are easier to maintain and to extend. However the definition of the SOLID principles is quite abstract, and some developers find it difficult to apply them in practice. In my talk I will show how well-known Design Patterns illustrate the application of the SOLID principles, and also show examples of how to follow these principles to Refactor and improve existing designs.
About the speaker:
Hayim Makabee was born in Rio de Janeiro. He immigrated to Israel in 1992 and completed his M.Sc. studies on Computer Sciences at the Technion. Since then he worked for several hi-tech companies, including also some start-ups. Currently he is a co-founder of the International Association of Software Architects (IASA) in Israel. Hayim is the author of a book about Object-Oriented Programming and has published papers in the fields of Software Engineering, Distributed Systems and Genetic Algorithms.
The Role of the Software Architect (short version)Hayim Makabee
Talk at the First Israeli Conference on Software Architecture
http://www.iltam.org/sw-arch2014/
Abstract:
In this talk Hayim will present the practical aspects of the role of the Software Architect, including the architect's contribution at the diverse stages of the software development life cycle, and the cooperation with the diverse stakeholders: Developers, Team Leaders, Project Managers, QA and Technical Writers.
Bio: Hayim Makabee was born in Rio de Janeiro. He immigrated to Israel in 1992 and completed his M.Sc. studies on Computer Sciences at the Technion. Since then he worked for several hi-tech companies, including also some start-ups. Currently he is a Research Engineer at Yahoo! Labs Haifa. He is also a co-founder of the International Association of Software Architects in Israel.
The quality of software systems may be expressed as a collection of Software Quality Attributes. When the system requirements are defined, it is essential also to define what is expected regarding these quality attributes, since these expectations will guide the planning of the system architecture and design.
Software quality attributes may be classified into two main categories: static and dynamic. Static quality attributes are the ones that reflect the system’s structure and organization. Examples of static attributes are coupling, cohesion, complexity, maintainability and extensibility. Dynamic attributes are the ones that reflect the behavior of the system during its execution. Examples of dynamic attributes are memory usage, latency, throughput, scalability, robustness and fault-tolerance.
Following the definitions of expectations regarding the quality attributes, it is essential to devise ways to measure them and verify that the implemented system satisfies the requirements. Some static attributes may be measured through static code analysis tools, while others require effective design and code reviews. The measuring and verification of dynamic attributes requires the usage of special non-functional testing tools such as profilers and simulators.
In this talk I will discuss the main Software Quality attributes, both static and dynamic, examples of requirements, and practical guidelines on how to measure and verify these attributes.
Title: The Role of the Software Architect
Speaker: Hayim Makabee, co-founder of the Israeli Chapter of the International Association of Software Architects (IASA)
Abstract:
In this talk Hayim will present the practical aspects of the role of the Software Architect, including:
- The four areas of expertise: Design, Domain, Technology and Methodology.
- The cooperation with stakeholders: Developers, Team Leaders, Project Managers, QA and Technical Writers.
Understanding the expected areas of expertise is essential for the architect to develop his/her professional skills.
Understanding how to cooperate with the diverse stakeholders is essential to improve the architect's impact and effectiveness.
Reducing Technical Debt: Using Persuasive Technology for Encouraging Software...Hayim Makabee
This document summarizes a research paper that aims to explore ways to reduce "documentation debt" by encouraging software developers to document code. It discusses how lack of documentation increases maintenance costs. While developers recognize the importance of documentation, in practice code is often not well-documented. The paper proposes using persuasive technology and tool triggers to motivate developers to document code as they work. It outlines a study where developers will use a tool that reminds them to add comments, and compares documentation levels between groups with and without social motivation features. The goal is to create a utility to encourage documentation and reduce technical debt.
Technical debt is a metaphor for the gap between the current state of
a software system and its hypothesized ‘ideal’ state. One of the significant and
under-investigated elements of technical debt is documentation debt, which
may occur when code is created without supporting internal documentation,
such as code comments. Studies have shown that outdated or lacking
documentation is a considerable contributor to increased costs of software
systems maintenance. The importance of comments is often overlooked by
software developers, resulting in a notably slower growth rate of comments
compared to the growth rate of code in software projects. This research aims to
explore and better understand developers’ reluctance to document code, and
accordingly to propose efficient ways of using persuasive technology to
encourage programmers to document their code. The results may assist software
practitioners and project managers to control and reduce documentation debt.
As we navigate through the ebbs and flows of life, it is natural to experience moments of low motivation and dwindling passion for our goals.
However, it is important to remember that this is a common hurdle that can be overcome with the right strategies in place.
In this guide, we will explore ways to rekindle the fire within you and stay motivated towards your aspirations.
Aggression - Applied Social Psychology - Psychology SuperNotesPsychoTech Services
A proprietary approach developed by bringing together the best of learning theories from Psychology, design principles from the world of visualization, and pedagogical methods from over a decade of training experience, that enables you to: Learn better, faster!
ProSocial Behaviour - Applied Social Psychology - Psychology SuperNotesPsychoTech Services
A proprietary approach developed by bringing together the best of learning theories from Psychology, design principles from the world of visualization, and pedagogical methods from over a decade of training experience, that enables you to: Learn better, faster!
Procrastination is a common challenge that many individuals face when it comes to completing tasks and achieving goals. It can hinder productivity and lead to feelings of stress and frustration.
However, with the right strategies and mindset, it is possible to overcome procrastination and increase productivity.
In this article, we will explore the causes of procrastination, how to recognize the signs of procrastination in oneself, and effective strategies for overcoming procrastination and boosting productivity.
Understanding of Self - Applied Social Psychology - Psychology SuperNotesPsychoTech Services
A proprietary approach developed by bringing together the best of learning theories from Psychology, design principles from the world of visualization, and pedagogical methods from over a decade of training experience, that enables you to: Learn better, faster!
You may be stressed about revealing your cancer diagnosis to your child or children.
Children love stories and these often provide parents with a means of broaching tricky subjects and so the ‘The Secret Warrior’ book was especially written for CANSA TLC, by creative writer and social worker, Sally Ann Carter.
Find out more:
https://cansa.org.za/resources-to-help-share-a-parent-or-loved-ones-cancer-diagnosis-with-a-child/
2. Networking is
Overrated
• It is very easy to meet new people,
exchange business cards and create
a connection.
• However, it is much more difficult to
keep in touch with all these people
over time.
• The natural tendency is to simply
stop having any kind of interaction
with our new contacts until we
completely forget about each other.
3. The Business Cards Collection
Do you have a business cards collection? Please select one of them randomly
and answer these questions:
1. Do you remember where did you meet this person? Do you remember in
which circumstances did you meet?
2. Did someone introduce you to this person? Do you remember who
introduced you?
3. Do you remember the face of this person? Would you be able to recognize
him/her in the street?
4. Did you ever communicate with this person? Do you remember when was
your last interaction?
5. If you would see the name of this person somewhere else, would you
remember that you once met and exchanged business cards?
4. Benefits of a Good
Reputation
Having a good reputation means that:
• People will remember us. They will
remember us for many years since we
had our last interaction.
• People will recommend us. They will
introduce us to their own contacts
whenever they think we may contribute.
• People will constantly offer us new
opportunities. They will invite us when
they have a job opening, or when they
need a partner or an adviser.
5. Reputation =
Right Place + Right Time
• If you have a good
reputation your
name will be
present even if you
are not physically
present.
• People will mention
you in the right
context, at the right
places and at the
right times.
6. Networking vs Reputation
• Networking = You want to meet
people that may help you.
• Reputation = You create value for
people you may never meet.
8. Be a Connector
• Connectors are the people in a community
who know large numbers of people and
who are in the habit of making
introductions.
• They know people across an array of social,
cultural, professional, and economic circles,
and make a habit of introducing people
who work or live in different circles.
• Connectors are “a handful of people with a
truly extraordinary knack [... for] making
friends and acquaintances”.
10. You are already a
connector!
You are already being a connector
every time you:
• Make an introduction between
two friends.
• Send the CV of a friend to
another friend who works for a
company that has an open
position.
12. Curate Content
“Content curation is the process of gathering information relevant to a
particular topic or area of interest, usually with the intention of adding
value through selection and organization”.
14. You are already
curating content!
You are already curating content
every time you:
• Share a video on WhatsApp.
• Send a link to an interesting
article to a friend.
• Recommend a book you read or a
movie you watched.
16. Create Content
• “Content creation is the process of
generating topic ideas that appeal to
your followers, creating written or
visual content around those ideas,
and making that information
accessible to your audience as a blog,
video, infographic, or other format.”
• “Create something unique. Don’t
simply regurgitate the information
that’s already out there. Infuse a
unique style or cite new research to
emphasize your points.”
18. You are already creating content!
You are already creating content
every time you:
• Publish a post on Facebook,
Instagram or Twitter.
• Send a message to a group on
WhatsApp.
• Comment publicly on your
friends’ posts.
20. Developing Skills
1. Learn
• Acquire Knowledge
• Consume Content
2. Put your knowledge in
practice
3. Gain experience
21. Developing your Reputation
1. Learn
• Acquire Knowledge
• Consume Content
2. Put your knowledge in
practice
3. Gain experience
4. Teach
• Share your Knowledge
• Create Content
23. Ask yourself:
• What do you know?
• That other people don’t
know?
• That other people would like
to know?
24. Your Product
• What do you know?
Your Product
• That other people don’t
know?
Your Differential = Scarcity
• That other people would like
to know?
The Demand
26. Networking vs Reputation: Meetups
• Networking:
• You participate in Meetups.
• Reputation:
• You speak in Meetups.
• You organize Meetups.
• You invite people to speak in
Meetups.
28. You are an Expert!
You can transform your
personal experiences on
valuable content you can
share with others:
• Unique projects
• Work for a big organization
• Work for the FIFA World Cup
• Work for the Olympic Games
• Helping people in need
34. Employability
• Employability = The ability to find a new job.
• Successful Career Path = A career path in which your Employability is
always increasing.
• Most professionals are afraid that as they get older it may become
difficult for them to find a new job.
• With proper planning and investment, many professionals can
actually increase their Employability as they get older.
35. 1st Stage: You actively look for a new job
When you are a fresh graduate or when you do not have much experience, you must
actively look for a new job.
The less experience you have, the less differences when compared to other candidates.
Your employability at this stage depends mostly on your performance at job interviews.
To be invited to job interviews, you must have a good CV.
At this stage you don’t even have many friends working for other companies who may
recommend you.
36. 2nd Stage: You
are invited by
head-hunters
You will be approached by head-hunters if
you have special experience and skills which
are highly in demand and hard to find.
Head-hunters will not contact you if your
skills are not in demand, or if there are many
other professionals with similar experience.
In general, head-hunters will offer you jobs
which are better than your current one.
37. How to move
from the 1st
to the 2nd
stage
Keep
Keep a rich LinkedIn profile with
detailed and relevant information so
that head-hunters will find you.
Acquire
Acquire experience and skills in fields
which are highly in demand and that
do not have enough supply.
Work
Work for companies which have a
reputation of hiring only highly-
qualified professionals.
38. 3rd Stage: You are invited to join a company
At this stage you are invited to join a company because of your unique
reputation, because you have proved achievements besides your
experience and skills.
You may be contacted by a friend or acquaintance who is a C-level
executive or a VP in another company. Or you may be invited to be a
co-founder in a seed-stage start-up.
In any case you will be offered a leadership position with greater
authority and responsibility than your current job.
39. Being invited
to join a
company
When you are approached by a head-hunter, they
want someone like you. The head-hunter will say:
“You have the exact profile we are looking for.”
In contrast, when you are invited to join a
company, they want you. The invitation will be:
“We want you to come work with us.”
40. How to move
from the 2nd
to the 3rd
stage:
• Build your reputation by making your
achievements visible. Become a recognized
authority in your field.
• Build your network by connecting to all the
people you have been in any kind of professional
relationship. This includes people you should
regularly meet in conferences and meet-ups.
• Achievements mean results. People must be
aware of your contribution to the companies
you’ve worked for. They must know that you had
a central role in the creation of new products
that were successful in the market and that
drove significant revenues to your company.
41. Opportunities
= Reputation X
Size(Network)
• The number of opportunities that appear to
you will depend on both your reputation and
the size of your network.
• Even if you have a very big network, most
people will not remember you if you don’t
make your achievements visible.
• On the other hand, it is not very useful to have
a very strong reputation in a small network.
• For example, you may be considered the
topmost expert inside your company, but this
would not help you get job offers from other
companies.
42. In Summary:
Successful
Career Path
Our goal should be to develop strategies to have a
Successful Career Path in which our Employability
is always increasing.
• In the 1st stage you need a good CV. The only
goal of the CV is to be invited for an interview
when you apply for a job.
• In the 2nd stage you need a good LinkedIn
profile. The goal of your profile is to make it easy
for head-hunters to find you and offer you a
relevant job.
• In the 3rd stage you need your name to be a
brand. You need to have an active presence both
virtually and in real-life events, so that people
will remember you.