Predstavte si že jedeného dňa dostane váš šéf bláznivý nápad napísať vlastný kolaboratívny editor v javascripte (obdoba google docs). Čo obnáša dostať tento nápad z hlavy a pretaviť ho do produkcie? Ako vyvíjať software podobného kalibru a uspieť?
Ruby On Rails - webdevelopment wordt weer leuk!Martin Hietkamp
Deze presentatie heb ik een jaar geleden (2007) gegeven om de developers bij Ordina | Wisdom enthousiast te maken voor Ruby on Rails.
In het eerste deel ga ik voornamelijk in op de filosofie achter Ruby on Rails: programmer happines :)
De demo zit niet in de slides van de presentatie.
How to run WebAssembly in your React Web ApplicationAlexandr Skachkov
This document discusses how to run WebAssembly in a React web application. It provides an overview of what WebAssembly is, which is a new binary format that provides performance benefits over JavaScript. It can be used to build high performance applications and run code written in languages like C/C++ and Rust in the browser. The document then discusses how to set up a basic WebAssembly project using tools like Webpack loaders and provides resources for learning more about WebAssembly.
This document introduces MacRuby, a Ruby implementation that allows Ruby code to be used to script and build applications for Mac OS X. MacRuby provides a complete Ruby 1.9 environment and allows Ruby code to interface with Cocoa and Objective-C to build graphical user interface applications. Performance benchmarks show that MacRuby code runs nearly as fast as native Objective-C. MacRuby is currently available as a preview release but will be included in Mac OS X 10.7 Lion.
This document discusses JRuby and cloud computing platforms. It provides pricing details for a pay-as-you-go cloud computing service starting at $8,800 per month for 1 CPU and 1GB RAM with 30GB storage. It also outlines the included services such as firewall, global IP address, OS templates for RedHat, CentOS, and Windows 2008 Server, backup and more. Finally, it discusses how JRuby can be used to build applications on cloud platforms with technologies like Rails, Sinatra, Rack, message queues, and job processing frameworks.
Everyone hates typos and fortunately spelling correction algorithms were invented! Last year I worked on a project bringing spell checking to a Django web application. The problem with spell checking is that it tends to be CPU intensive and it’s not what you want to run on your synchronous Django workers. Fortunately Rust and WebAssembly, a new binary instruction format for the Web, came to the rescue!
In this talk we’ll see:
– what is WebAssembly
– what is Rust
– how you can integrate WebAssembly in your project
This document discusses Asynchronous JavaScript and XML (AJAX) including why it is used, common examples of AJAX applications like Google Suggest and Google Maps, and different frameworks that can be used to implement AJAX including ASP.NET AJAX, GWT, SAJAX, and Pyjamas. It also raises topics for further discussion such as debugging, security, using AJAX with OrangeScape, JSON, and search engine optimization.
Jiří Sedláček - Vývoj backendu pomocí ZeroMQ a GearmanaDevelcz
Zkušenosti nasbírané při vývoji messagingu a workerů pro zpracování velkých dat US zdravotních pojišťoven. Na příkladech ukážu místa, kde jsme se spálili. Předvedu, jak jsme systém debugovali. Vysvětlím, jak se ZeroMQ doplňuje s Gearmanem.
Microservices: Decomposing Applications for Deployability and Scalability (ja...Chris Richardson
Today, there are several trends that are forcing application architectures to evolve. Users expect a rich, interactive and dynamic user experience on a wide variety of clients including mobile devices. Applications must be highly scalable, highly available and run on cloud environments. Organizations often want to frequently roll out updates, even multiple times a day. Consequently, it's no longer adequate to develop simple, monolithic web applications that serve up HTML to desktop browsers.In this talk we describe the limitations of a monolithic architecture. You will learn how to use the scale cube to decompose your application into a set of narrowly focused, independently deployable services. We will also discuss how an event-based approach addresses the key challenges of developing applications with this architecture.
Ruby On Rails - webdevelopment wordt weer leuk!Martin Hietkamp
Deze presentatie heb ik een jaar geleden (2007) gegeven om de developers bij Ordina | Wisdom enthousiast te maken voor Ruby on Rails.
In het eerste deel ga ik voornamelijk in op de filosofie achter Ruby on Rails: programmer happines :)
De demo zit niet in de slides van de presentatie.
How to run WebAssembly in your React Web ApplicationAlexandr Skachkov
This document discusses how to run WebAssembly in a React web application. It provides an overview of what WebAssembly is, which is a new binary format that provides performance benefits over JavaScript. It can be used to build high performance applications and run code written in languages like C/C++ and Rust in the browser. The document then discusses how to set up a basic WebAssembly project using tools like Webpack loaders and provides resources for learning more about WebAssembly.
This document introduces MacRuby, a Ruby implementation that allows Ruby code to be used to script and build applications for Mac OS X. MacRuby provides a complete Ruby 1.9 environment and allows Ruby code to interface with Cocoa and Objective-C to build graphical user interface applications. Performance benchmarks show that MacRuby code runs nearly as fast as native Objective-C. MacRuby is currently available as a preview release but will be included in Mac OS X 10.7 Lion.
This document discusses JRuby and cloud computing platforms. It provides pricing details for a pay-as-you-go cloud computing service starting at $8,800 per month for 1 CPU and 1GB RAM with 30GB storage. It also outlines the included services such as firewall, global IP address, OS templates for RedHat, CentOS, and Windows 2008 Server, backup and more. Finally, it discusses how JRuby can be used to build applications on cloud platforms with technologies like Rails, Sinatra, Rack, message queues, and job processing frameworks.
Everyone hates typos and fortunately spelling correction algorithms were invented! Last year I worked on a project bringing spell checking to a Django web application. The problem with spell checking is that it tends to be CPU intensive and it’s not what you want to run on your synchronous Django workers. Fortunately Rust and WebAssembly, a new binary instruction format for the Web, came to the rescue!
In this talk we’ll see:
– what is WebAssembly
– what is Rust
– how you can integrate WebAssembly in your project
This document discusses Asynchronous JavaScript and XML (AJAX) including why it is used, common examples of AJAX applications like Google Suggest and Google Maps, and different frameworks that can be used to implement AJAX including ASP.NET AJAX, GWT, SAJAX, and Pyjamas. It also raises topics for further discussion such as debugging, security, using AJAX with OrangeScape, JSON, and search engine optimization.
Jiří Sedláček - Vývoj backendu pomocí ZeroMQ a GearmanaDevelcz
Zkušenosti nasbírané při vývoji messagingu a workerů pro zpracování velkých dat US zdravotních pojišťoven. Na příkladech ukážu místa, kde jsme se spálili. Předvedu, jak jsme systém debugovali. Vysvětlím, jak se ZeroMQ doplňuje s Gearmanem.
Microservices: Decomposing Applications for Deployability and Scalability (ja...Chris Richardson
Today, there are several trends that are forcing application architectures to evolve. Users expect a rich, interactive and dynamic user experience on a wide variety of clients including mobile devices. Applications must be highly scalable, highly available and run on cloud environments. Organizations often want to frequently roll out updates, even multiple times a day. Consequently, it's no longer adequate to develop simple, monolithic web applications that serve up HTML to desktop browsers.In this talk we describe the limitations of a monolithic architecture. You will learn how to use the scale cube to decompose your application into a set of narrowly focused, independently deployable services. We will also discuss how an event-based approach addresses the key challenges of developing applications with this architecture.
This document discusses moving from traditional monolithic and SOA architectures to microservices architectures. It covers principles of microservices like high cohesion, low coupling, independent deployability and scaling of services. It also discusses organizational implications, noting that teams are typically organized around business capabilities rather than technical layers in a microservices structure. Key challenges of microservices like increased complexity and performance overhead are also outlined.
This document provides an introduction to microservices. It begins by outlining the challenges of monolithic architecture such as long build/release cycles and difficulty scaling. It then introduces microservices as a way to decompose monolithic applications into independently deployable services. Key benefits of microservices include improved agility, scalability, and innovation. The document discusses microservice design principles like communicating over APIs, using the right tools for each service, securing services, and being a good citizen in the ecosystem. It provides examples of how to implement a restaurant microservice using AWS services like API Gateway, Lambda, DynamoDB and containers.
Fred George describes his personal journey discovering microservice architecture over 15 years working on large software projects. He details how his projects evolved from monolithic 1 million line applications to small, independent services. This allowed for improved agility, with services being short-lived and able to deploy several times a day. George also discusses challenges faced and lessons learned around loosely coupling services, managing data across services, and establishing practices for a "living software" system with continuous deployment of services.
Developing applications with a microservice architecture (SVforum, microservi...Chris Richardson
Here is the version of my microservices talk that that I gave on September 17th at the SVforum Cloud SIG/Microservices meetup.
To learn more see http://microservices.io and http://plainoldobjects.com
Introducing Amazon Pinpoint – Targeted Push Notifications for Mobile AppsAmazon Web Services
Amazon Pinpoint is a targeted push notification service for mobile apps. It allows marketers to segment users and send targeted push notifications from the console. Developers can also integrate the mobile SDK to enable features like silent notifications and custom attributes. Pinpoint scales to deliver millions of messages quickly and reliably. It has a generous free tier and pay-as-you-go pricing model based on the number of messages, events, and monthly targeted users. The service is currently available in US East (N. Virginia) with plans to expand to other regions internationally. To get started, users can integrate Pinpoint with their mobile app from the AWS Mobile Hub console.
Microservices are small services with independent lifecycles that work together. There is an underlying tension in that definition – how independent can you be when you have to be part of a whole? I’ve spent much of the last couple of years trying to understand how to find the right balance, and in this talk/tutorial I’ll be presenting the core seven principles that I think represent what makes microservices tick.
After a brief introduction of what microservices are and why they are important, we’ll spend the bulk of the time looking at the principles themselves, wherever possible covering real-world examples and technology:
- Modelled around business domain – using techniques from domain-driven design to find service boundaries leads to better team alignment and more stable service boundaries, avoiding expensive cross-service changes.
- Culture of automation – all organisations that use microservices at scale have strong cultures of automation. We’ll look at some of their stories and think about which sort of automation is key.
- Hide implementation details – how do you hide the detail inside each service to avoid coupling, and ensure each service retains its autonomous nature?
- Decentralize all the things! – we have to push power down as far as we can, and this goes for both the system and organisational architecture. We’ll look at everything from autonomous self-contained teams and internal open source, to using choreographed systems to handle long-lived business transactions.
- Deploy independently – this is all about being able to deploy safely. So we’ll cover everything from deployment models to consumer-driven contracts and the importance of separating deployment from release.
- Isolate failure – just making a system distributed doesn’t make it more stable than a monolithic application. So what do you need to look for?
- Highly observable – we need to understand the health of a single service, but also the whole ecosystem. How?
In terms of learning outcomes, beginners will get a sense of what microservices are and what makes them different, whereas more experienced practitioners will get insight and practical advice into how to implement them.
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
We asked LinkedIn members worldwide about their levels of interest in the latest wave of technology: whether they’re using wearables, and whether they intend to buy self-driving cars and VR headsets as they become available. We asked them too about their attitudes to technology and to the growing role of Artificial Intelligence (AI) in the devices that they use. The answers were fascinating – and in many cases, surprising.
This SlideShare explores the full results of this study, including detailed market-by-market breakdowns of intention levels for each technology – and how attitudes change with age, location and seniority level. If you’re marketing a tech brand – or planning to use VR and wearables to reach a professional audience – then these are insights you won’t want to miss.
Artificial intelligence (AI) is everywhere, promising self-driving cars, medical breakthroughs, and new ways of working. But how do you separate hype from reality? How can your company apply AI to solve real business problems?
Here’s what AI learnings your business should keep in mind for 2017.
This document discusses Rails and FreeWheel's use of Rails for their monetization platform. Some key points:
- FreeWheel uses Rails for their MRM/RPM user interface and has upgraded their Rails version over time from 1.2 to 3.1.
- They take a quick development approach using Rails conventions but also optimize for performance.
- Their architecture includes Rails modules, widgets built with jQuery, and a Unicorn HTTP server for handling requests.
This document discusses Rails and FreeWheel. It provides an overview of how FreeWheel uses Rails for its monetization rights management (MRM) and revenue and payments management (RPM) user interfaces. It describes FreeWheel's transition from Rails 1.2 to Rails 3.0, improvements made to the codebase, and how widgets were developed to enhance the user experience.
The document discusses the evolution of MVC patterns and the rise of HTML5 for building mobile apps. It describes how JavaScript performance issues were really due to DOM inefficiency rather than the language itself. The document introduces Famo.us, a JavaScript library that uses transformation matrices from computer graphics to improve rendering performance on mobile. It explains how Famo.us implements an MVC pattern with Backbone.js to separate concerns for building responsive mobile apps with a common codebase.
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkRed Hat Developers
Are you familiar with the tight coupling of apps with their underlying platform that makes change hard or lack of scalability, performance, and flexibility of existing apps built with legacy technology or the fact that re-architecting apps cannot be done overnight? If yes to any of these, you probably think that you have “Cloud-Native Modernization or Death”. But what if there is another way that shows you the incremental steps to refactor the application to microservices and make use of Kubernetes/OpenShift to effectively deploy and manage it at scale on the cloud? This session guides developers on how to get started on their cloud-native journey, starting with monolithic application migration to a modern container platform using Kubernetes/OpenShift, and modernizing applications using microservices and Red Hat Cloud-Native Runtimes (Spring Boot and Quarkus).
The thread dump identifies the application and JVM threads present in the JVM at the time of the dump. It provides information on each thread's state, stack trace and timing details. It also includes a summary of JVM heap utilization broken down by generation. This information can help identify potential blocking issues, performance bottlenecks or memory leaks in the application.
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaAmazon Web Services
The presentation will discuss some architectural patterns in continuous integration, deployment and optimization and I will share some of the lessons learned from Amazon.com.
The goal of the presentation is to convince you that if you invest your time where you get the maximum learning from your customers, automate everything else in the cloud (CI + CD + CO), you get fast feedback and will be able to release early, release often and recover quickly from your mistakes. Dynamism of the cloud allows you to increase the speed of your iteration and reduce the cost of mistakes so you can continuously innovate while keeping your cost down.
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...andreaslubbe
Avoid the callback hell and improve on promises in node.js and JavaScript by using the new ES6 generators.
This presentation will show you before and after code examples that will illustrate the full benefit of using this new syntax.
(java2days) Is the Future of Java Cloudy?Steve Poole
This document discusses how Java can remain relevant in the future by evolving to meet new demands and competing technologies. It provides the results of several microbenchmarks comparing Java to other languages like Node, Swift, Go, Python and Ruby. The benchmarks show Java performing competitively in most cases. The document argues that Java's strengths like being type safe, garbage collected, and able to run on all platforms position it well for cloud, data analytics and machine learning workloads. It outlines IBM's plans to invest in Java and related open source projects to accelerate innovation and ensure Java remains the platform of choice.
Spring Framework provides a comprehensive infrastructure to develop Java applications. It handles dependency injection and inversion of control so developers can focus on domain logic rather than plumbing. Spring promotes best practices like clean code, test-driven development, and design patterns. It includes aspects for cross-cutting concerns and supports web development through frameworks like Spring MVC. The document introduces Spring's lightweight and modular IoC container and AOP capabilities for separating concerns.
This document discusses how to change an organization and provides examples of how the author's company changed their technical organization and processes. Some of the key points discussed include adopting agile methodologies like Scrum, emphasizing testing and use of open source tools, upgrading technologies and adopting newer versions of Ruby and Rails, and optimizing teams and processes to better support the business.
The document provides an overview of an individual's experience including their skills and qualifications. It lists experience in front-end and back-end development, project management, mobile development, design, and more. Technologies and tools mentioned include JavaScript, AngularJS, iOS, Android, Adobe Photoshop, and more. Contact information is provided at the bottom.
Building Node.js based APIs in minutes. Achieve full-stack JavaScript, Offline Sync, Geolocation, REST API / JSON, ORM and API Management in open source. Write your own connectors, work on express.js. Create MEAN stack applications connecting Angular to Node to MongoDB. Presented at the Connect.js conference in Atlanta
Challenges in an E-Commerce Catalogue with SQL; How Mongo helpsMongoDB
Our experience @homeshop18.com migrating the catalogue from MySql to Mongo. PageGenration Time reduced from 3s to 0.75ms. Scaled effortlessly to traffic 2.4Mn reqs per day.
This document discusses moving from traditional monolithic and SOA architectures to microservices architectures. It covers principles of microservices like high cohesion, low coupling, independent deployability and scaling of services. It also discusses organizational implications, noting that teams are typically organized around business capabilities rather than technical layers in a microservices structure. Key challenges of microservices like increased complexity and performance overhead are also outlined.
This document provides an introduction to microservices. It begins by outlining the challenges of monolithic architecture such as long build/release cycles and difficulty scaling. It then introduces microservices as a way to decompose monolithic applications into independently deployable services. Key benefits of microservices include improved agility, scalability, and innovation. The document discusses microservice design principles like communicating over APIs, using the right tools for each service, securing services, and being a good citizen in the ecosystem. It provides examples of how to implement a restaurant microservice using AWS services like API Gateway, Lambda, DynamoDB and containers.
Fred George describes his personal journey discovering microservice architecture over 15 years working on large software projects. He details how his projects evolved from monolithic 1 million line applications to small, independent services. This allowed for improved agility, with services being short-lived and able to deploy several times a day. George also discusses challenges faced and lessons learned around loosely coupling services, managing data across services, and establishing practices for a "living software" system with continuous deployment of services.
Developing applications with a microservice architecture (SVforum, microservi...Chris Richardson
Here is the version of my microservices talk that that I gave on September 17th at the SVforum Cloud SIG/Microservices meetup.
To learn more see http://microservices.io and http://plainoldobjects.com
Introducing Amazon Pinpoint – Targeted Push Notifications for Mobile AppsAmazon Web Services
Amazon Pinpoint is a targeted push notification service for mobile apps. It allows marketers to segment users and send targeted push notifications from the console. Developers can also integrate the mobile SDK to enable features like silent notifications and custom attributes. Pinpoint scales to deliver millions of messages quickly and reliably. It has a generous free tier and pay-as-you-go pricing model based on the number of messages, events, and monthly targeted users. The service is currently available in US East (N. Virginia) with plans to expand to other regions internationally. To get started, users can integrate Pinpoint with their mobile app from the AWS Mobile Hub console.
Microservices are small services with independent lifecycles that work together. There is an underlying tension in that definition – how independent can you be when you have to be part of a whole? I’ve spent much of the last couple of years trying to understand how to find the right balance, and in this talk/tutorial I’ll be presenting the core seven principles that I think represent what makes microservices tick.
After a brief introduction of what microservices are and why they are important, we’ll spend the bulk of the time looking at the principles themselves, wherever possible covering real-world examples and technology:
- Modelled around business domain – using techniques from domain-driven design to find service boundaries leads to better team alignment and more stable service boundaries, avoiding expensive cross-service changes.
- Culture of automation – all organisations that use microservices at scale have strong cultures of automation. We’ll look at some of their stories and think about which sort of automation is key.
- Hide implementation details – how do you hide the detail inside each service to avoid coupling, and ensure each service retains its autonomous nature?
- Decentralize all the things! – we have to push power down as far as we can, and this goes for both the system and organisational architecture. We’ll look at everything from autonomous self-contained teams and internal open source, to using choreographed systems to handle long-lived business transactions.
- Deploy independently – this is all about being able to deploy safely. So we’ll cover everything from deployment models to consumer-driven contracts and the importance of separating deployment from release.
- Isolate failure – just making a system distributed doesn’t make it more stable than a monolithic application. So what do you need to look for?
- Highly observable – we need to understand the health of a single service, but also the whole ecosystem. How?
In terms of learning outcomes, beginners will get a sense of what microservices are and what makes them different, whereas more experienced practitioners will get insight and practical advice into how to implement them.
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
We asked LinkedIn members worldwide about their levels of interest in the latest wave of technology: whether they’re using wearables, and whether they intend to buy self-driving cars and VR headsets as they become available. We asked them too about their attitudes to technology and to the growing role of Artificial Intelligence (AI) in the devices that they use. The answers were fascinating – and in many cases, surprising.
This SlideShare explores the full results of this study, including detailed market-by-market breakdowns of intention levels for each technology – and how attitudes change with age, location and seniority level. If you’re marketing a tech brand – or planning to use VR and wearables to reach a professional audience – then these are insights you won’t want to miss.
Artificial intelligence (AI) is everywhere, promising self-driving cars, medical breakthroughs, and new ways of working. But how do you separate hype from reality? How can your company apply AI to solve real business problems?
Here’s what AI learnings your business should keep in mind for 2017.
This document discusses Rails and FreeWheel's use of Rails for their monetization platform. Some key points:
- FreeWheel uses Rails for their MRM/RPM user interface and has upgraded their Rails version over time from 1.2 to 3.1.
- They take a quick development approach using Rails conventions but also optimize for performance.
- Their architecture includes Rails modules, widgets built with jQuery, and a Unicorn HTTP server for handling requests.
This document discusses Rails and FreeWheel. It provides an overview of how FreeWheel uses Rails for its monetization rights management (MRM) and revenue and payments management (RPM) user interfaces. It describes FreeWheel's transition from Rails 1.2 to Rails 3.0, improvements made to the codebase, and how widgets were developed to enhance the user experience.
The document discusses the evolution of MVC patterns and the rise of HTML5 for building mobile apps. It describes how JavaScript performance issues were really due to DOM inefficiency rather than the language itself. The document introduces Famo.us, a JavaScript library that uses transformation matrices from computer graphics to improve rendering performance on mobile. It explains how Famo.us implements an MVC pattern with Backbone.js to separate concerns for building responsive mobile apps with a common codebase.
Cloud-Native Modernization or Death? A false dichotomy. | DevNation Tech TalkRed Hat Developers
Are you familiar with the tight coupling of apps with their underlying platform that makes change hard or lack of scalability, performance, and flexibility of existing apps built with legacy technology or the fact that re-architecting apps cannot be done overnight? If yes to any of these, you probably think that you have “Cloud-Native Modernization or Death”. But what if there is another way that shows you the incremental steps to refactor the application to microservices and make use of Kubernetes/OpenShift to effectively deploy and manage it at scale on the cloud? This session guides developers on how to get started on their cloud-native journey, starting with monolithic application migration to a modern container platform using Kubernetes/OpenShift, and modernizing applications using microservices and Red Hat Cloud-Native Runtimes (Spring Boot and Quarkus).
The thread dump identifies the application and JVM threads present in the JVM at the time of the dump. It provides information on each thread's state, stack trace and timing details. It also includes a summary of JVM heap utilization broken down by generation. This information can help identify potential blocking issues, performance bottlenecks or memory leaks in the application.
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaAmazon Web Services
The presentation will discuss some architectural patterns in continuous integration, deployment and optimization and I will share some of the lessons learned from Amazon.com.
The goal of the presentation is to convince you that if you invest your time where you get the maximum learning from your customers, automate everything else in the cloud (CI + CD + CO), you get fast feedback and will be able to release early, release often and recover quickly from your mistakes. Dynamism of the cloud allows you to increase the speed of your iteration and reduce the cost of mistakes so you can continuously innovate while keeping your cost down.
Beautiful code instead of callback hell using ES6 Generators, Koa, Bluebird (...andreaslubbe
Avoid the callback hell and improve on promises in node.js and JavaScript by using the new ES6 generators.
This presentation will show you before and after code examples that will illustrate the full benefit of using this new syntax.
(java2days) Is the Future of Java Cloudy?Steve Poole
This document discusses how Java can remain relevant in the future by evolving to meet new demands and competing technologies. It provides the results of several microbenchmarks comparing Java to other languages like Node, Swift, Go, Python and Ruby. The benchmarks show Java performing competitively in most cases. The document argues that Java's strengths like being type safe, garbage collected, and able to run on all platforms position it well for cloud, data analytics and machine learning workloads. It outlines IBM's plans to invest in Java and related open source projects to accelerate innovation and ensure Java remains the platform of choice.
Spring Framework provides a comprehensive infrastructure to develop Java applications. It handles dependency injection and inversion of control so developers can focus on domain logic rather than plumbing. Spring promotes best practices like clean code, test-driven development, and design patterns. It includes aspects for cross-cutting concerns and supports web development through frameworks like Spring MVC. The document introduces Spring's lightweight and modular IoC container and AOP capabilities for separating concerns.
This document discusses how to change an organization and provides examples of how the author's company changed their technical organization and processes. Some of the key points discussed include adopting agile methodologies like Scrum, emphasizing testing and use of open source tools, upgrading technologies and adopting newer versions of Ruby and Rails, and optimizing teams and processes to better support the business.
The document provides an overview of an individual's experience including their skills and qualifications. It lists experience in front-end and back-end development, project management, mobile development, design, and more. Technologies and tools mentioned include JavaScript, AngularJS, iOS, Android, Adobe Photoshop, and more. Contact information is provided at the bottom.
Building Node.js based APIs in minutes. Achieve full-stack JavaScript, Offline Sync, Geolocation, REST API / JSON, ORM and API Management in open source. Write your own connectors, work on express.js. Create MEAN stack applications connecting Angular to Node to MongoDB. Presented at the Connect.js conference in Atlanta
Challenges in an E-Commerce Catalogue with SQL; How Mongo helpsMongoDB
Our experience @homeshop18.com migrating the catalogue from MySql to Mongo. PageGenration Time reduced from 3s to 0.75ms. Scaled effortlessly to traffic 2.4Mn reqs per day.
This document discusses how MongoDB can serve as a flexible data store for e-commerce applications. It notes MongoDB's developer, business, and operations friendliness compared to relational databases. The document then provides examples of data modeling for e-commerce data in MongoDB, including products, orders, and analytics data. It also outlines how an e-commerce application evolved from using a relational database and Solr to leveraging MongoDB for certain data and shows the growing ecosystem of tools that integrate with MongoDB.
This document discusses how MongoDB can serve as a flexible data store for e-commerce applications. It notes MongoDB's developer, business, and operations friendliness compared to relational databases. The document then provides examples of data modeling for e-commerce data in MongoDB, including products, orders, and analytics data. It also outlines how an e-commerce application evolved from using a relational database and Solr to leveraging MongoDB for certain data and shows the growing ecosystem of tools that integrate with MongoDB.
Introductory presentation about what React is, why it would be useful and how it can be built into the existing legacy architecture of GraysOnline that spans almost a decade of technologies.
This document discusses TypeScript, a superset of JavaScript that adds optional static typing and class-based object-oriented programming. It provides an overview of TypeScript's history and capabilities, compares it to similar technologies like Flow, and provides an example of a TypeScript project structure and usage with React. Key points covered include TypeScript support for interfaces, enums, mixins and type safety, its compatibility with ES6 and beyond, and how it can be used to strengthen type checking in React applications.
[RHFSeoul2017]6 Steps to Transform Enterprise ApplicationsDaniel Oh
The document provides a 6 step approach to transforming enterprise applications:
1. Re-organizing to DevOps;
2. Implementing self-service, on-demand infrastructure;
3. Automating deployments using tools like Puppet, Chef, and Kubernetes;
4. Establishing continuous integration and deployment pipelines;
5. Adopting advanced deployment techniques like blue-green deployments;
6. Moving to a microservices architecture.
Wakanda: NoSQL for Model-Driven Web applications - NoSQL matters 2012Alexandre Morgaut
This document discusses Wakanda, a cross-platform development and deployment system for model-driven web applications. Wakanda allows building business web applications using a single language, JavaScript, and provides a data-driven approach using its NoSQL database. It includes tools like a data model editor, debugger, and administration interface. Wakanda applications can be deployed across platforms and accessed via REST APIs.
Similar to Peter Cipov - Coe - od monolitu k mikroslužbám (20)
Daniel Steigerwald: WYSIWYG je šik! (když funguje)Develcz
This document discusses the challenges of building a contenteditable editor and what the author has learned. It covers how everything except text selection needs to be reimplemented, and the options for existing contenteditable editors. It also discusses leveraging new browser APIs, functional programming concepts, and the author's experience building their own editor. Complexity is identified as one of the worst enemies of software engineering.
Rychle a agilně dodávat nové featury všichni umíme, nebo to aspoň tvrdíme. Nestresujeme se bugy a nedokonalostmi. Důležité je, že je kód rychle v produkci, uživatelé šťastní, adopce novinky blesková. Uplyne pár měsíců (nebo let) a rychle nahozená featura se přilepí na produkt jak příslovečný psí exkrement. A jednoho krásného dne jí potřebujeme updatnout na vyšší, zpětně nekompatibilní, verzi, nahradit jiným řešením nebo jen prostě vypnout. A tady začínají naše těžkosti, přijďte si poslechnout, jak nám to vůbec nejde.
Jak se staví hardware ve firmě, kde jste dosud dělali jen software? Co je potřeba zařídit a vědět, v čem se postup liší. Navíc, v letadle je i tak softwaru dost: jak programovat systém řízení letadla, jak zpracováváme informace ze sensorů a kdy budou letadla plně autonomní?
Ondřej Kokeš: Zpracování dat z veřejných zdrojůDevelcz
Český stát se v posledních letech otevírá občanům a nabízí víc a víc dat o své činnosti. Co s tim můžeme jako veřejnost dělat a co se v datech dá najít? Bohužel to není o stažení čistého CSV z jedné centrální databáze, cesta je poněkud trnitější. Ukážeme si, kde všude narazíme na problémy a jak se dostat do kýženého cíle, kdy budeme moci na základě dat odpovídat na otázky ohledně hospodaření státu.
Patrick Zandl: Open source software, hardware, 3D tiskárny a tvrdý business -...Develcz
Co všechno musíte udělat, abyste měli nejlepší open source tiskárnu na světě, vyráběli ji v Praze vedle holešovického nádraží, nechali ji každého vylepšit i okopírovat a ještě na tom vydělali? Tiskárna je souhra hardware, firmware, software pro přípravu tiskových podkladů a hromady dalších drobností, které spolu musí ladit. Na této přednášce se nenaučíte: programovat tiskárnu, pájet na PCB. V rámci přednášky existuje riziko, že dostanete nutkavou potřebuji si ji pořídit, vylepšit a dokázat přednášejícímu, že neměl pravdu (v čem, to už si nevzpomínáte).
Štěpán Bechynský: Hardware pro IoT projekty nejen pro hobby, ale i pro průmyslDevelcz
Celá přednáška bude o tom, jak si nenaběhnout s výběrem hardware pro IoT projekt, jak správně rozlišit hardware pro PoC od hardware pro MVP a také o tom, co to vlastně PoC a MVP je. Uvidíte příklady z praxe, kdy nevhodný hardware celý projekt zkomplikoval a naopak, kdy vhodně zvolený hardware vše značně urychlil. Příznivci Raspberry Pi se dozví, proč je to ten nejhorší hardware na IoT a odpůrci uvidí, proč je Raspberry Pi pro IoT ta nejlepší volba.
Tomáš Vondra: Paralelizace dotazu a partitioning v PostgreSQLDevelcz
Paralelizace dotazů byla představena v PostgreSQL 9.6. Partitioning se poprvé objevil v PostgreSQL 10. PostgreSQL 11 přináší mnoho vylepšení iniciální implementace, odstraňuje různá omezení a umožňuje použití vlastností pro daleko širší škálu případů. V přednášce se nejdříve podíváme na to jaké dotazy dnes PostgreSQL umí paralelizovat, krátkou demonstraci výkonu, a přehled omezení dotazů ktere (zatím) paralelizovat nelze. V druhé části se budeme věnovat partitioningu - ukážeme si jak se partitioning v PostgreSQL řešil dříve, a jak to řeší PostgreSQL 10+.
V Google píšeme kód tak, aby se o něm dalo dokázat, že není náchylný k XSS a několika dalším útokům. Přednáška ukazuje, jak navrhujeme bezpečná API, konvertujeme na ně starý kód a vynucujeme, aby nebezpečná API nikdo nemohl použít. Děláme to kombinací pravidel kompilace kódu a nutnosti schválení některých změn bezpečnostním expertem. Většina použitých nástrojů je open-source (Bazel, Closure Templates, Closure Compiler) a dá se použít i mimo Google.
Už jste slyšeli, že Facebook vydal nový jazyk? Říkají mu ReasonML. Měl by nás jako front-end vývojáře zajímat? Nestačí nám Flow / Typescript? Jak s ReasonML začít? Všechny tyto otázky se pokusím zodpovědět a na jednoduchém příkladě si ukážeme, jak snadno se dá ReasonML integrovat do stávající React + Redux aplikace a jaké benefity přináší.
Michal Illich: Zuri aneb Vývojáři staví letadloDevelcz
The document discusses an opening for a software engineer position at Zuri that involves working on projects related to airplane control systems using C++ and Python as well as machine learning. The position also involves web development using React, JS and PHP. Computer vision work using C is also mentioned.
Ondřej Šika: Docker, Traefik a CI - Mějte nasazené všeny větve na kterých pra...Develcz
The document describes setting up Docker, Traefik, and CI/CD pipelines. It includes a docker-compose.yml configuration file for Traefik that sets up port forwarding and SSL termination. It also includes a .gitlab-ci.yml file that defines a deploy job that builds a Docker image, pushes it to Docker Hub, and deploys it to a server using Traefik routing.
David Grudl: Open source: The Good, the Bad and the UglyDevelcz
Je open source úspěšný model vývoje software, kterému patří budoucnost, nebo naopak omyl odsouzený k zániku? Má smysl zkoušet nějaký open source vyvíjet? Jste jako uživatelé přínosem, nebo naopak zatloukáte svým oblíbeným projektům hřebíčky do rakve, aniž to tušíte?
The document discusses headless CMS, which separates the content management system from the frontend display. This decoupled approach has advantages like improved developer experience, faster speeds, and lower costs. Headless CMS communicates with the frontend via REST APIs or GraphQL to provide content as a service.
Jaroslav Tulach: GraalVM - z vývoje nejrychlejšího virtuálního stroje na světěDevelcz
The document discusses GraalVM, a virtual machine developed by Oracle Labs that allows programs written in different programming languages to run together and interoperate with each other efficiently. GraalVM uses just-in-time compilation techniques as well as ahead-of-time compilation via native image generation to provide high performance for all languages while enabling zero-overhead interoperability between them. It aims to be a single virtual machine that can support and optimize the execution of applications built with various languages.
Why Apache Kafka Clusters Are Like Galaxies (And Other Cosmic Kafka Quandarie...Paul Brebner
Closing talk for the Performance Engineering track at Community Over Code EU (Bratislava, Slovakia, June 5 2024) https://eu.communityovercode.org/sessions/2024/why-apache-kafka-clusters-are-like-galaxies-and-other-cosmic-kafka-quandaries-explored/ Instaclustr (now part of NetApp) manages 100s of Apache Kafka clusters of many different sizes, for a variety of use cases and customers. For the last 7 years I’ve been focused outwardly on exploring Kafka application development challenges, but recently I decided to look inward and see what I could discover about the performance, scalability and resource characteristics of the Kafka clusters themselves. Using a suite of Performance Engineering techniques, I will reveal some surprising discoveries about cosmic Kafka mysteries in our data centres, related to: cluster sizes and distribution (using Zipf’s Law), horizontal vs. vertical scalability, and predicting Kafka performance using metrics, modelling and regression techniques. These insights are relevant to Kafka developers and operators.
Superpower Your Apache Kafka Applications Development with Complementary Open...Paul Brebner
Kafka Summit talk (Bangalore, India, May 2, 2024, https://events.bizzabo.com/573863/agenda/session/1300469 )
Many Apache Kafka use cases take advantage of Kafka’s ability to integrate multiple heterogeneous systems for stream processing and real-time machine learning scenarios. But Kafka also exists in a rich ecosystem of related but complementary stream processing technologies and tools, particularly from the open-source community. In this talk, we’ll take you on a tour of a selection of complementary tools that can make Kafka even more powerful. We’ll focus on tools for stream processing and querying, streaming machine learning, stream visibility and observation, stream meta-data, stream visualisation, stream development including testing and the use of Generative AI and LLMs, and stream performance and scalability. By the end you will have a good idea of the types of Kafka “superhero” tools that exist, which are my favourites (and what superpowers they have), and how they combine to save your Kafka applications development universe from swamploads of data stagnation monsters!
Manyata Tech Park Bangalore_ Infrastructure, Facilities and Morenarinav14
Located in the bustling city of Bangalore, Manyata Tech Park stands as one of India’s largest and most prominent tech parks, playing a pivotal role in shaping the city’s reputation as the Silicon Valley of India. Established to cater to the burgeoning IT and technology sectors
DECODING JAVA THREAD DUMPS: MASTER THE ART OF ANALYSISTier1 app
Are you ready to unlock the secrets hidden within Java thread dumps? Join us for a hands-on session where we'll delve into effective troubleshooting patterns to swiftly identify the root causes of production problems. Discover the right tools, techniques, and best practices while exploring *real-world case studies of major outages* in Fortune 500 enterprises. Engage in interactive lab exercises where you'll have the opportunity to troubleshoot thread dumps and uncover performance issues firsthand. Join us and become a master of Java thread dump analysis!
Boost Your Savings with These Money Management AppsJhone kinadey
A money management app can transform your financial life by tracking expenses, creating budgets, and setting financial goals. These apps offer features like real-time expense tracking, bill reminders, and personalized insights to help you save and manage money effectively. With a user-friendly interface, they simplify financial planning, making it easier to stay on top of your finances and achieve long-term financial stability.
What to do when you have a perfect model for your software but you are constrained by an imperfect business model?
This talk explores the challenges of bringing modelling rigour to the business and strategy levels, and talking to your non-technical counterparts in the process.
Consistent toolbox talks are critical for maintaining workplace safety, as they provide regular opportunities to address specific hazards and reinforce safe practices.
These brief, focused sessions ensure that safety is a continual conversation rather than a one-time event, which helps keep safety protocols fresh in employees' minds. Studies have shown that shorter, more frequent training sessions are more effective for retention and behavior change compared to longer, infrequent sessions.
Engaging workers regularly, toolbox talks promote a culture of safety, empower employees to voice concerns, and ultimately reduce the likelihood of accidents and injuries on site.
The traditional method of conducting safety talks with paper documents and lengthy meetings is not only time-consuming but also less effective. Manual tracking of attendance and compliance is prone to errors and inconsistencies, leading to gaps in safety communication and potential non-compliance with OSHA regulations. Switching to a digital solution like Safelyio offers significant advantages.
Safelyio automates the delivery and documentation of safety talks, ensuring consistency and accessibility. The microlearning approach breaks down complex safety protocols into manageable, bite-sized pieces, making it easier for employees to absorb and retain information.
This method minimizes disruptions to work schedules, eliminates the hassle of paperwork, and ensures that all safety communications are tracked and recorded accurately. Ultimately, using a digital platform like Safelyio enhances engagement, compliance, and overall safety performance on site. https://safelyio.com/
The Rising Future of CPaaS in the Middle East 2024Yara Milbes
Explore "The Rising Future of CPaaS in the Middle East in 2024" with this comprehensive PPT presentation. Discover how Communication Platforms as a Service (CPaaS) is transforming communication across various sectors in the Middle East.
What is Continuous Testing in DevOps - A Definitive Guide.pdfkalichargn70th171
Once an overlooked aspect, continuous testing has become indispensable for enterprises striving to accelerate application delivery and reduce business impacts. According to a Statista report, 31.3% of global enterprises have embraced continuous integration and deployment within their DevOps, signaling a pervasive trend toward hastening release cycles.
Transforming Product Development using OnePlan To Boost Efficiency and Innova...OnePlan Solutions
Ready to overcome challenges and drive innovation in your organization? Join us in our upcoming webinar where we discuss how to combat resource limitations, scope creep, and the difficulties of aligning your projects with strategic goals. Discover how OnePlan can revolutionize your product development processes, helping your team to innovate faster, manage resources more effectively, and deliver exceptional results.
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid
IBM watsonx Code Assistant for Z, our latest Generative AI-assisted mainframe application modernization solution. Mainframe (IBM Z) application modernization is a topic that every mainframe client is addressing to various degrees today, driven largely from digital transformation. With generative AI comes the opportunity to reimagine the mainframe application modernization experience. Infusing generative AI will enable speed and trust, help de-risk, and lower total costs associated with heavy-lifting application modernization initiatives. This document provides an overview of the IBM watsonx Code Assistant for Z which uses the power of generative AI to make it easier for developers to selectively modernize COBOL business services while maintaining mainframe qualities of service.
A Comprehensive Guide on Implementing Real-World Mobile Testing Strategies fo...kalichargn70th171
In today's fiercely competitive mobile app market, the role of the QA team is pivotal for continuous improvement and sustained success. Effective testing strategies are essential to navigate the challenges confidently and precisely. Ensuring the perfection of mobile apps before they reach end-users requires thoughtful decisions in the testing plan.
The Role of DevOps in Digital Transformation.pdfmohitd6
DevOps plays a crucial role in driving digital transformation by fostering a collaborative culture between development and operations teams. This approach enhances the speed and efficiency of software delivery, ensuring quicker deployment of new features and updates. DevOps practices like continuous integration and continuous delivery (CI/CD) streamline workflows, reduce manual errors, and increase the overall reliability of software systems. By leveraging automation and monitoring tools, organizations can improve system stability, enhance customer experiences, and maintain a competitive edge. Ultimately, DevOps is pivotal in enabling businesses to innovate rapidly, respond to market changes, and achieve their digital transformation goals.
Voxxed Days Trieste 2024 - Unleashing the Power of Vector Search and Semantic...Luigi Fugaro
Vector databases are redefining data handling, enabling semantic searches across text, images, and audio encoded as vectors.
Redis OM for Java simplifies this innovative approach, making it accessible even for those new to vector data.
This presentation explores the cutting-edge features of vector search and semantic caching in Java, highlighting the Redis OM library through a demonstration application.
Redis OM has evolved to embrace the transformative world of vector database technology, now supporting Redis vector search and seamless integration with OpenAI, Hugging Face, LangChain, and LlamaIndex. This talk highlights the latest advancements in Redis OM, focusing on how it simplifies the complex process of vector indexing, data modeling, and querying for AI-powered applications. We will explore the new capabilities of Redis OM, including intuitive vector search interfaces and semantic caching, which reduce the overhead of large language model (LLM) calls.
Enhanced Screen Flows UI/UX using SLDS with Tom KittPeter Caitens
Join us for an engaging session led by Flow Champion, Tom Kitt. This session will dive into a technique of enhancing the user interfaces and user experiences within Screen Flows using the Salesforce Lightning Design System (SLDS). This technique uses Native functionality, with No Apex Code, No Custom Components and No Managed Packages required.
WMF 2024 - Unlocking the Future of Data Powering Next-Gen AI with Vector Data...Luigi Fugaro
Vector databases are transforming how we handle data, allowing us to search through text, images, and audio by converting them into vectors. Today, we'll dive into the basics of this exciting technology and discuss its potential to revolutionize our next-generation AI applications. We'll examine typical uses for these databases and the essential tools
developers need. Plus, we'll zoom in on the advanced capabilities of vector search and semantic caching in Java, showcasing these through a live demo with Redis libraries. Get ready to see how these powerful tools can change the game!
A neural network is a machine learning program, or model, that makes decisions in a manner similar to the human brain, by using processes that mimic the way biological neurons work together to identify phenomena, weigh options and arrive at conclusions.
7. „If you don't end up regreting your
early technology decisions, you have
probably over-engeniered“
Randy Shoup
8. eBay
Monolit v Perlu -> Monolit v C++ -> Java -> mikro-služby
Twitter
Monolit v Rails -> JS / Rails / Scala -> mikro-služby
Amazon
Monolit v C++ -> Perl/C++ -> Java/Scala -> mikro-služby
18. A quiescently consistent fetch-and-
increment counter cannot
be both available and partition tolerant
Scalable Eventually Consistent Counters over Unreliable Networks, 2013
23. I see you have a poorly
structured monolith. Would you
like me to convert it into a poorly
structured set of microservices?
https://twitter.com/architectclippy/status/570025079825764352