Keynote at halfstackconf 2017 discussing the falsehood of the idea that in order to survive the automation evolution everybody needs to learn how to code. Machines can code, too.
This document discusses AWS Identity and Access Management (IAM). It provides an overview of IAM including its ability to provide fine-grained access control and integrate with SAML 2.0 and LDAP. It notes issues with passwords and credentials like entropy and rainbow table attacks. The document outlines IAM roles and policies and recommends making credentials temporary to improve security.
If your project has working features, a living design system, quality assurance and a code style guide, there is nothing that you will learn in this talk. Maybe.
Presentation at UX London 2014 The web is a fluid and inherently flexible medium - to design effectively for it you need to understand it better. In this hands-on workshop we will look to level up your HTML & CSS skills to learn how you can create responsive prototypes and re-usable pattern libraries for your web projects. We’ll explore how to create layouts that flow beautifully from tiny screens to large ones and how to design responsive grids from the content-out. Through practical examples we’ll discuss the benefits of developing responsive pattern libraries including when and how to use them.
This document discusses ways to improve how web developers learn best practices through browser and tooling improvements. It suggests that linting and inline insights directly in code editors could help prevent mistakes by flagging issues early. A tool called webhint is highlighted that provides one-stop checking and explanations of hints related to performance, accessibility, security and more. The document advocates for customizing hints based on a project's specific needs and environment. Overall, it argues for accelerated learning through context-sensitive, customizable best practices integrated into development workflows.
The document discusses the death of microservices as an architecture style. It argues that many systems labeled as microservices are actually distributed monoliths due to issues like shared libraries, drivers, frameworks, and tables that couple services together and prevent independent upgrades. It recommends isolating services by avoiding shared dependencies, using packages to separate concerns, and isolating data stores, configurations, and implementations between services. Platforms, education around service-oriented architecture principles, and accepting necessary duplication can help build true microservice systems.
Otto presents 6 reasons why everybody should learn JavaScript: 1. JavaScript is easy to learn and use without complex setups. 2. JavaScript is versatile and can be used for many programming paradigms. 3. JavaScript is open source so you have freedom in how you use and build with it. 4. JavaScript is universal and can be used across many environments from browsers to Node.js. 5. There is high demand for JavaScript skills in the job market. 6. JavaScript knowledge will be necessary for most programming jobs in the future.
An opinionated guide on transitioning from the military to a career in software. Originally presented in coordination with SC Codes (sccodes.org) as "Tech for Transitioning Service Members"
Slides of my "Asynchronous Decision Making - why and how?" talk at the http://fossbackstage.de/ micro-summit, November 2017 I also gave this talk at FOSDEM 2018, a video recording (with somewhat poor audio unfortunately) is available at https://fosdem.org/2018/schedule/event/community_decision_making_why_how/ There's also a video recording of the French speaking version at devoxx.fr 2018, https://www.youtube.com/watch?v=xkC4zjtAyRc See also my opensource.com article on the same topic at https://opensource.com/article/17/12/asynchronous-decision-making and a slightly older blog post at https://blogs.apache.org/foundation/entry/success-at-apache-asynchronous-decision
Presented by: Ellen Spertus, Mills College Presented at All Things Open 2020 Abstract: Open source programming is professionally and personally rewarding, but many people are intimidated by the barriers to entry and the field's reputation for hostility to newcomers, especially members of marginalized groups. As a computer science professor at a minority-serving women's college, I have countered this by guiding students, as part of their required coursework, to learn and apply the necessary skills to make contributions to open source projects. I will share what I have learned over the years about breaking down the barriers to help other educators, mentors, and open source practitioners increase participation.
This document discusses architecture and design patterns for Python applications. It begins with an introduction by the presenter, dhilipsiva, who is a tech lead and full-stack developer at Appknox. The presentation then provides an overview of Appknox, describing the technologies in its stack including Django, PostgreSQL, RabbitMQ, and Kubernetes. It also outlines Appknox's microservices architecture, which includes components like API servers, scanners, tasks, and a device farm. The document concludes by promising to explain Appknox's deployment process and inviting questions.
Christian Güdemann discusses OPENNTF and open source collaboration. He addresses common myths about open source like code being of poor quality or unsupported. Open source identifies problems and creates communities to solve them. Contributing features or fixes to IBM products is now easier through open source with OPENNTF. Resources listed include the OPENNTF, CollaborationToday, and XPages websites and YouTube, Twitter, and GitHub pages for OPENNTF.
TDD has been around since 2002 but today still too many people out there have little understanding of what it actually is. This slide deck tries to help to understand that TDD is not a method to create tests but a truly genuine way to do programming and that programmers like no other benefit from the technique. Hopefully, this will lead more people to embracing it.
This document provides guidance on becoming an ML expert, including: - Taking Andrew Ng's popular ML course on Coursera to get started - Studying mathematics like linear algebra, probability, and statistics - Exploring other online courses and resources on ML from Stanford, edX, and Udacity - Checking GitHub repositories for example codes, tutorials, books, and interesting ML projects - Considering libraries like TensorFlow, scikit-learn, and others for building ML systems
The document discusses the experiences of a graduate from BCC working as a software development consultant. It touches on working at ThoughtWorks as a developer consultant using agile methodologies like putting working software over documentation and customer collaboration over contracts. It also discusses skills needed like English, version control, web development technologies, testing practices and refactoring. Distributed development, learning on your own and automatizing processes are also mentioned.
This document provides an introduction to coding and web development. It discusses HTML, CSS, and JavaScript, and how to structure them using concepts like the box model. It promotes Thinkful, an online coding bootcamp, and describes their curriculum and mentorship approach. Links are provided to free coding resources and a two-week trial for Thinkful's program. Graduates share their experiences and projects.
This document provides an introduction to coding and web development. It discusses HTML, CSS, and JavaScript, and how to structure them using concepts like the box model. It promotes Thinkful, an online coding bootcamp, and describes their curriculum and mentorship approach. Links are provided to free coding resources and a two-week trial for Thinkful's program.
◦If you lost Eclipse, could you still produce quality code? If Visual Studio or IntelliJ don't provide you with a specific tool, are you still able to use it comfortably? If you're troubled by these questions, don't worry because you are not the only one! Over the years, developers tend to forget their roots and grow overly comfortable with their IDE. But, it's not the IDE that makes us developers, it's our mad coding skills and software knowledge! In this session David will bring you back to the days where a text editor was just a text editor, and command line was king and go through creating, building, deploying an application without an IDE.
Chris Heilmann gave a talk at BTConf in Munich in January 2018 about machine learning, automation worries, and coding. He discussed how coding used to refer to creative programming within technical limitations but now often refers to programming for work. He addressed common worries about new technologies and dependencies, and argued that abstractions are not inherently bad and help more people build products together through consensus. The talk focused on using tools to be more productive and enabling rather than seeing them as dangers, and creating solutions for users rather than fighting old approaches.
This document discusses ways to raise the bar of software development by combining it with other disciplines. It proposes 6 intersections between software design and other fields: 1) Software Design and UX, 2) Other design disciplines, 3) Materials Science, 4) Math, 5) Engineering principles of built-in self-testing, and 6) Reaching out to scientists. It argues that considering ideas from other domains could improve software design and help address challenges like dependencies in legacy code. The document also suggests ways to fundamentally change development by precisely defining requirements and generating code from them.
Artificial intelligence is more and more becoming the core of digital products. Designing for Products based on AI requires Designers to know about Machine Learning. This talk is an easy walk through the most important elements of Machine Learning. It looks at the fundamental principles of using practical examples. It showcases applications of the different types of Machine Learning. The use-cases range from text categorization to image recognition, on to speech analysis. The goal is to show what is important for designers and why.
The document discusses various topics related to analysis and design processes including front-end analysis, analysis paralysis, evaluation models, performance analysis quadrants, agile development principles, flashcard software options, and open source development practices. It provides resources and information on needs assessment, instructional design, project management, and software development.
Diego Oppenheimer discusses the rise of algorithm marketplaces and the new "algorithm economy". Key points include: - Advances in machine learning, computer vision, speech recognition and natural language processing are enabling algorithms to interpret unstructured data at scale. - Algorithm marketplaces allow algorithms to be hosted, discovered, monetized and composed modularly to address a wide range of use cases across many industries. - The algorithm economy will lower barriers to applying machine intelligence and foster innovation as algorithms become reusable assets that creators and users can both benefit from.
A recap of interesting points and quotes from the May 2024 WSO2CON opensource application development conference. Focuses primarily on keynotes and panel sessions.
This document summarizes talks and events from the SXSW conference, including discussions on content management systems, CSS frameworks, maps and geolocation, and startup funding. It provides an overview of several talks on topics like the history of buttons, design processes, and HTML5 development. Meetups are scheduled in London on the 3rd Thursday of each month to discuss takeaways from SXSW.
Slides from my talk at WordCamp Nashville, including notes. Covers why clean code is important, and provides 10 tips to make your code cleaner, for WordPress and beyond
The document discusses the history and development of the software craftsmanship movement. It began in the 1990s with ideas around treating software development as a craft similar to other skilled trades. In the 2000s, these ideas saw renewed interest through Robert Martin's talks advocating for craftsmanship over poor quality code. This led to the creation of the Software Craftsmanship Manifesto, which outlined principles for developers to focus on quality, learning, and sharing knowledge. The document examines issues that led to interest in craftsmanship such as poor code quality and a lack of practical skills training. It presents craftsmanship as an alternative that emphasizes pride in work, learning from others, and stakeholder trust through
The document discusses concerns about the perception and realities of coding careers. It expresses worry that coding is seen solely as a way to get a job rather than as a means of problem-solving. While coding can provide fulfilling work, the document cautions that the need for coders may decrease with automation and that the role may evolve from coding to engineering. It suggests a future where machines assist with repetitive coding tasks and people focus on delivering maintainable, secure products with attention to privacy and user experience.
Software Craftsmanship began in the late 1960s as a response to issues with large software projects for NASA and the Department of Defense. It emphasizes coding skills, accountability, and seeing software development as a craft rather than just engineering. The movement aims to raise the bar of professionalism through continuous learning, deliberate practice, and pragmatism.
This document discusses best practices for developing data science products at Philip Morris International (PMI). It covers: - PMI's data science team of over 40 people across four hubs working on fraud prevention and other problems. - Key principles for PMI's data science work, including being business-driven, investing in people, self-organizing, iterating to improve, and co-creating solutions. - Challenges in data product development involving integrating work between data scientists and other teams, and practices like continuous integration/delivery to overcome these challenges. - The role of data scientists in contributing code that is readable, testable, reusable, reproducible, and usable by other teams to integrate into
¿Cómo puede llevar el aprendizaje automático a las masas? Los proyectos de Machine Learning con la búsqueda de talento, el tiempo para construir e implementar modelos y confiar en los modelos que se construyen. ¿Cómo puede tener varios equipos en su organización para crear modelos de ML precisos sin ser expertos en ciencia de datos o aprendizaje automático? ¿Se pregunta sobre los diferentes sabores de AutoML? H2O Driverless AI emplea las técnicas de científicos expertos en datos en una aplicación fácil de usar que ayuda a escalar sus esfuerzos de ciencia de datos. La inteligencia artificial Driverless permite a los científicos de datos trabajar en proyectos más rápido utilizando la automatización y la potencia de computación de vanguardia de las GPU para realizar tareas en minutos que solían tomar meses. Con H2O Driverless AI, todos, incluyendo expertos y científicos de datos junior, científicos de dominio e ingenieros de datos pueden desarrollar modelos confiables de aprendizaje automático. Esta plataforma de aprendizaje automático de última generación ofrece una funcionalidad única y avanzada para la visualización de datos, la ingeniería de características, la interpretabilidad del modelo y la implementación de baja latencia. H2O Driverless AI hace: * Visualización automática de datos * Ingeniería automática de funciones a nivel de Grandmaster * Selección automática del modelo * Ajuste y capacitación automáticos del modelo * Paralelización automática utilizando múltiples CPU o GPU * Ensamblaje automático del modelo *automática del Interpretaciónaprendizaje automático (MLI) * Generación automática de código de puntuación ¿Quieres probarlo tú mismo? Puede obtener una prueba gratuita aquí: H2O Driverless AI trial. Venga a esta sesión y descubra cómo comenzar con el Aprendizaje automático automático con AI sin conductor H2O, y cree modelos potentes con solo unos pocos clics. ¡Te veo pronto! Acerca de H2O.ai H2O.ai es una empresa visionaria de software de código abierto de Silicon Valley que creó y reimaginó lo que es posible. Somos una empresa de fabricantes que trajeron al mercado nuevas plataformas y tecnologías para impulsar el movimiento de inteligencia artificial. Somos los creadores de, H2O, la principal plataforma de aprendizaje de ciencia de datos de fuente abierta y de aprendizaje automático utilizada por casi la mitad de Fortune 500 y en la que confían más de 14,000 organizaciones y cientos de miles de científicos de datos de todo el mundo.
Presentation at the Geekmeet in Craiova, Romania talking about the adoption of APIs and libraries as a way to prevent unmaintainable products.
The document discusses strategies for effective hybrid app development using both HTML5 and native capabilities. It notes the benefits of a hybrid approach in allowing reuse of code across platforms while also gaining performance from native features. Examples are provided of how a PhoneGap framework can be used to build cross-platform mobile apps that incorporate both HTML5 and native platform APIs.
This is about chat gpt and generative ai. How it is fine tuning the search based on prompt provided by user every time, and how search actually work
Building intelligent apps involves combining real-time analytics, machine learning, and artificial intelligence to provide personalized recommendations and automate tasks for customers. Developers can use MongoDB and Google Cloud to build intelligent apps in 3 steps: 1) create a base ecommerce app, 2) add a recommendation engine using machine learning, and 3) enable shopping via chat with artificial intelligence. This brings data scientists and developers together to create applications that understand and assist customers.
More information, visit: http://www.godatadriven.com/accelerator.html Data scientists aren’t a nice-to-have anymore, they are a must-have. Businesses of all sizes are scooping up this new breed of engineering professional. But how do you find the right one for your business? The Data Science Accelerator Program is a one year program, delivered in Amsterdam by world-class industry practitioners. It provides your aspiring data scientists with intensive on- and off-site instruction, access to an extensive network of speakers and mentors and coaching. The Data Science Accelerator Program helps you assess and radically develop the skills of your data science staff or recruits. Our goal is to deliver you excellent data scientists that help you become a data driven enterprise. The right tools We teach your organisation the proven data science tools. The right hands We are trusted by many industry leading partners. The right experience We've done big data and data science at many clients, we know what the real world is like. The right experts We have a world class selection of lecturers that you will be working with. Vincent D. Warmerdam Jonathan Samoocha Ivo Everts Rogier van der Geer Ron van Weverwijk Giovanni Lanzani The right curriculum We meet twice a month. Once for a lecture, once for a hackathon. Lectures The RStudio stack. The art of simulation. The iPython stack. Linear modelling. Operations research. Nonlinear modelling. Clustering & ensemble methods. Natural language processing. Time series. Visualisation. Scaling to big data. Advanced topics. Hackathons Scrape and mine the internet. Solving multiarmed bandit problems. Webdev with flask and pandas as a backend. Build an automation script for linear models. Build a heuristic tsp solver. Code review your automation for nonlinear models. Build a method that outperforms random forests. Build a markov chain to generate song lyrics. Predict an optimal portfolio for the stock market. Create an interactive d3 app with backend. Start up a spark cluster with large s3 data. You pick! Interested? Ping us here. signal@godatadriven.com
This document summarizes a presentation by Dr. S. Ducasse on dedicated tools and research for software business intelligence at Tisoca 2014. It discusses: - The need for dedicated tools tailored to specific problems to aid in maintenance, decision making, and reducing costs. - The Moose technology for building custom analysis tools through its language-independent meta-model and ability to import different data sources. - Examples of how analysis tools built with Moose have helped companies with challenges like migration, reverse engineering, and decision support. - The benefits of an inventive toolkit approach that allows building multi-level dashboards, code analyzers, impact analyzers, and other custom tools to address specific
Financial firms are taking AI and machine learning seriously to augment traditional investment decision making. Alternative datasets including text analytics, cloud computing, algorithmic trading are game changers for many firms who are adopting technology at a rapid pace. As more and more open-source technologies penetrate enterprises, quants and data scientists have a plethora of choices for building, testing and scaling quantitative models. Even though there are multiple solutions and platforms available to build machine learning solutions, challenges remain in adopting machine learning in the enterprise.In this talk we will illustrate a step-by-step process to enable replicable AI/ML research within the enterprise using QuSandbox.
This document discusses privilege in the context of social media and the internet. It acknowledges privileges like internet access, the ability to communicate, and supportive online communities. It warns that machine learning and algorithms risk creating echo chambers and guided messaging if they are not kept in check by human curation. The document advocates taking back the web for decent, thinking and loving humans and using privileges to help others gain access to learning, communication, and communities.
JavaScript is a bigger world than a language these days. Time to take stock and find happiness in that world.
This document discusses artificial intelligence and how it can help humans. It covers that AI is not new, having originated in the 1950s, and is now more advanced due to increased computing power. It also discusses how AI utilizes pattern recognition and machine learning. The document then covers several applications of AI including computer vision, natural language processing, sentiment analysis, speech recognition/conversion and moderation. It notes both the benefits of AI in automating tasks and preventing errors, as well as the responsibilities of ensuring transparency and allowing people to opt-in to algorithms.
PWA are a hot topic and it is important to understand that they are a different approach to apps than the traditional way of packaging something and letting the user install it. In this keynote you'll see some of the differences.
This document discusses privilege in technology and perceptions of technology workers. It acknowledges the privileges that tech workers enjoy, such as access to resources and high demand in the job market. However, it also notes problems like peer pressure, lack of work-life balance, and imposter syndrome. Both tech workers and the public have skewed perceptions of each other - tech workers feel others do not appreciate or understand their work, while the public sees tech workers as antisocial or caring only about profit. The document encourages taking small steps to improve the situation, such as being kind to oneself, considering others, sharing knowledge, and focusing on quality over quantity of work.
The document provides five ways for JavaScript developers to be happier: 1) Concentrate on the present and focus on creating rather than worrying about the past or future. 2) Limit distractions by streamlining your development environment and using an editor like VS Code that consolidates features. 3) Make mistakes less likely by using linters to catch errors as you code. 4) Get to know your tools better like debuggers to avoid console.log and gain insights to build better solutions. 5) Give back to others in the community by being helpful rather than causing drama.
The document discusses progressive web apps (PWAs) and provides suggestions for improving them. It notes that while PWAs aim to have engaging, fast, integrated, and reliable experiences like native apps, they still have room for improvement in areas like speed, integration, and reliability. It emphasizes that PWAs should adhere to web best practices and provide actually useful experiences rather than just focusing on technical features. The document encourages helping the PWA effort by providing feedback, using and contributing to tools, keeping messaging up-to-date, and promoting high-quality examples.
Progressive Web Apps (PWAs) can provide app-like experiences through the web by making web content fast, reliable and engaging. While PWAs may not be necessary for all projects, they can help clean up and speed up current web-based projects. PWAs leverage new web capabilities like service workers to work offline, load fast, and improve the user experience without having to meet all the requirements of native apps.
This document discusses progressive web applications (PWAs) and their advantages over traditional native mobile applications. PWAs use modern web capabilities like Service Workers to deliver native-like experiences to users. Some key benefits of PWAs include their ability to work across platforms, have smaller file sizes for faster loading, support offline use, and provide simple update mechanisms compared to native apps. While PWAs do not have full access to device capabilities like native apps, they allow delivering app-like web content to users in a more accessible and reliable manner than traditional web pages.
Keynote at PNWPHP covering Machine Learning and How we should go about using it to build human interfaces.
This document discusses progressive web apps (PWAs). It notes that PWAs aim to make web apps feel like native mobile apps by being discoverable, installable, linkable, safe, responsive and progressive. The document outlines some key characteristics of PWAs, including that they need to be served from secure origins and have app manifests. It also discusses some common misconceptions around PWAs and notes that as PWAs improve, they will continue to blur the line between web apps and native mobile apps.
This document discusses the differences between CSS and JavaScript and when each is most appropriate to use. It argues that CSS is often underestimated in favor of JavaScript solutions. CSS has advanced significantly with features like calc(), media queries, animations/transitions, flexbox, grid, variables and more. These powerful features allow many tasks to be accomplished with CSS alone without needing JavaScript. The document encourages embracing the "squishiness" of the web and considering CSS more when building interfaces.
This document contains the transcript of a presentation by Chris Heilmann on web development. Some of the key points discussed include: - The benefits of progressive enhancement and using HTML, CSS, and JavaScript together to build robust and accessible websites. - How limitations in early design can foster creativity. - The importance of error handling and defensive coding practices. - Embracing new technologies like Service Workers and Manifests to build Progressive Web Apps. - Rethinking the idea that JavaScript is unreliable and should not be depended on, as modern browsers have made it a capable tool.
The document discusses how machines and software can help humans by doing tasks like preventing mistakes, performing repetitive tasks, filling information gaps, remembering and categorizing information, improving understanding, enabling new communication methods, and providing protection. It describes how advances in AI, APIs, cloud services, and data processing have made it possible to build useful and helpful interfaces. The conclusion encourages developers to use these capabilities to create simple, human-centric interfaces that benefit users.