Deck from MongoChicago, providing a case study on the implementation of the totsy.com website using MongoDB and the Lithium framework.
There's a video you can watch of the same presentation from the Mongo Boston event which happened one month earlier:
http://www.10gen.com/video/mongoboston2010/totsy
MongoDB and Ecommerce : A perfect combinationSteven Francia
Presentation given at the MongoDB NYC Meetup by Steve Francia, VP of Engineering at OpenSky. OpenSky uses MongoDB to develop the next ecommerce platform. OpenSky also uses Symfony 2, Doctrine 2, PHP 5.3, PHPUnit 3.5, jQuery, node.js, Git (with gitflow) and a touch of Java and Python. The OpenSky team contributes back to many of these technologies and employs core members of the Symfony 2 and Doctrine 2 teams.
Augmenting RDBMS with MongoDB for ecommerceSteven Francia
Steve Francia, VP of Engineering at OpenSky a NYC based social commerce company, on how OpenSky augments using RDBMS with MongoDB to develop the next ecommerce platform.
OpenSky utilizes both traditional SQL solutions and combines them with NoSQL to overcome the limitations of each, increase development speed and scale quickly.
While Hadoop is the most well-known technology in big data, it’s not always the most approachable or appropriate solution for data storage and processing. In this session you’ll learn about enterprise NoSQL architectures, with examples drawn from real-world deployments, as well as how to apply big data regardless of the size of your own enterprise.
MongoDB and Ecommerce : A perfect combinationSteven Francia
Presentation given at the MongoDB NYC Meetup by Steve Francia, VP of Engineering at OpenSky. OpenSky uses MongoDB to develop the next ecommerce platform. OpenSky also uses Symfony 2, Doctrine 2, PHP 5.3, PHPUnit 3.5, jQuery, node.js, Git (with gitflow) and a touch of Java and Python. The OpenSky team contributes back to many of these technologies and employs core members of the Symfony 2 and Doctrine 2 teams.
Augmenting RDBMS with MongoDB for ecommerceSteven Francia
Steve Francia, VP of Engineering at OpenSky a NYC based social commerce company, on how OpenSky augments using RDBMS with MongoDB to develop the next ecommerce platform.
OpenSky utilizes both traditional SQL solutions and combines them with NoSQL to overcome the limitations of each, increase development speed and scale quickly.
While Hadoop is the most well-known technology in big data, it’s not always the most approachable or appropriate solution for data storage and processing. In this session you’ll learn about enterprise NoSQL architectures, with examples drawn from real-world deployments, as well as how to apply big data regardless of the size of your own enterprise.
There are many fast data stores, and then there is Redis. Learn about this excellent NoSQL solution that is a powerful in-memory key-value store. Learn how to solve traditionally difficult problems with Redis, and how you can benefit from 100,000 reads/writes a second on commodity hardware. We’ll discuss how and when to use the different datatypes and commands to fit your needs. We’ll discuss the different PHP libraries with their pros and cons. We’ll then show some live examples on how to use it for a chatroom, and how Redis manages a billion data points for our dating matching system. Finally, we’ll discuss some of the upcoming features in the near future, such as clustering and scripting.
Monday, January 14, 2012 presentation on 3 different data types (unstructured, structured and semi-structured) and how xml plays a role in content management systems, onix (bibliographic data sharing), RSS (real simple syndication) and xml-first publishing for ebooks.
NoSQL overview presentation with details on Riak and CouchDB.
Presented at Qbranch CODE Night 2010-04-15.
Thanks to @frli01 for arranging and @xlson for invitation.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
First Session on Learning to Code for Startup MVP's using Ruby on Rails.
This session covers the web architecture, Git/GitHub and makes a real rails app that is deployed to Heroku at the end.
Thanks,
Henry
Battle of NoSQL stars: Amazon's SDB vs MongoDB vs CouchDB vs RavenDBJesse Wolgamott
Lone Star Ruby Conference 2010... by Jesse Wolgamott
Dive into the target audiences and differences in NoSQL storage, how to implement them and what this NoSQL thing is all about.
Discuss how SQL has limits when you get to web-scale and how NoSQL bypasses these limits.
JSON, by now, became a regular part of most applications and services. Do we, how ever, really want to transfer human readable information or are we looking for a binary protocol to be as debuggable as JSON? CBOR the Concise Binary Object Representation offers the best of JSON + an extremely efficient, binary representation.
http://www.cbor.io
Wordnik's technical co-founder Tony Tam describes the reason for going NoSQL. During his talk Tony will discuss the selection criteria, testing + evaluation and successful, zero-downtime migration to MongoDB. Additionally details on Wordnik's speed and stability will be covered as well as how NoSQL technologies have changed the way Wordnik scales.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1aNvLOQ.
Mike Krieger discusses Instagram's best and worst infrastructure decisions, building and deploying scalable and extensible services. Filmed at qconsf.com.
Mike Krieger (@mikeyk) graduated from Stanford University where he studied Symbolic Systems with a focus in Human-Computer Interaction. During his undergrad, he interned at Microsoft's PowerPoint team and after graduating, he worked at Meebo for a year and a half as a user experience designer and as a front-end engineer before joining the Instagram team doing design & development.
There are many fast data stores, and then there is Redis. Learn about this excellent NoSQL solution that is a powerful in-memory key-value store. Learn how to solve traditionally difficult problems with Redis, and how you can benefit from 100,000 reads/writes a second on commodity hardware. We’ll discuss how and when to use the different datatypes and commands to fit your needs. We’ll discuss the different PHP libraries with their pros and cons. We’ll then show some live examples on how to use it for a chatroom, and how Redis manages a billion data points for our dating matching system. Finally, we’ll discuss some of the upcoming features in the near future, such as clustering and scripting.
Monday, January 14, 2012 presentation on 3 different data types (unstructured, structured and semi-structured) and how xml plays a role in content management systems, onix (bibliographic data sharing), RSS (real simple syndication) and xml-first publishing for ebooks.
NoSQL overview presentation with details on Riak and CouchDB.
Presented at Qbranch CODE Night 2010-04-15.
Thanks to @frli01 for arranging and @xlson for invitation.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
First Session on Learning to Code for Startup MVP's using Ruby on Rails.
This session covers the web architecture, Git/GitHub and makes a real rails app that is deployed to Heroku at the end.
Thanks,
Henry
Battle of NoSQL stars: Amazon's SDB vs MongoDB vs CouchDB vs RavenDBJesse Wolgamott
Lone Star Ruby Conference 2010... by Jesse Wolgamott
Dive into the target audiences and differences in NoSQL storage, how to implement them and what this NoSQL thing is all about.
Discuss how SQL has limits when you get to web-scale and how NoSQL bypasses these limits.
JSON, by now, became a regular part of most applications and services. Do we, how ever, really want to transfer human readable information or are we looking for a binary protocol to be as debuggable as JSON? CBOR the Concise Binary Object Representation offers the best of JSON + an extremely efficient, binary representation.
http://www.cbor.io
Wordnik's technical co-founder Tony Tam describes the reason for going NoSQL. During his talk Tony will discuss the selection criteria, testing + evaluation and successful, zero-downtime migration to MongoDB. Additionally details on Wordnik's speed and stability will be covered as well as how NoSQL technologies have changed the way Wordnik scales.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1aNvLOQ.
Mike Krieger discusses Instagram's best and worst infrastructure decisions, building and deploying scalable and extensible services. Filmed at qconsf.com.
Mike Krieger (@mikeyk) graduated from Stanford University where he studied Symbolic Systems with a focus in Human-Computer Interaction. During his undergrad, he interned at Microsoft's PowerPoint team and after graduating, he worked at Meebo for a year and a half as a user experience designer and as a front-end engineer before joining the Instagram team doing design & development.
Pjesëmarrës dhe spektatorë.
“Mundohu të dalësh përpara Perëndisë si i sprovuar, si punëtor që nuk ka pse të turpërohet, që thotë drejt fjalën e së vërtetës” (2:15).
Some history and statistics on Polish beer - Factors behind the Polish craft beer scene - EBC Symposium announcement - Copenhagen Beer Festival - May 2016
Continuing our in-depth look at Millennials as the generation to watch, we are turning to a region in the world where they have an even greater impact on society. Although we are at risk of focusing on millennials at the detriment of other equally important demographic groups like Baby Boomers and Generation X, this is not the case in the Middle East, where they make up half of the population.
Halalification is one of the key trends that has caught our attention. No longer limited to the consumable industries of food and drink, the designation of halal is increasingly branching out to everything from cosmetics to holidays as Muslims diversify their understanding of living piously. Vague approximations of vegan or organic products are becoming less acceptable as alternatives.
PHP is the King, nodejs is the Prince and Lua is the fool.
An overview about how the IT architecture changed at Namshi, a fashion e-commerce based in Dubai
A great idea can be built with almost any technology. The success or failure of your project has more to do with vision, leadership, execution, and market than technological choices.
Besides the vision, a lot of startups focus on culture. what isn’t often mentioned is that the technical decisions will have a direct effect on the company culture. Great things have been built with each of the technologies. But they do come with a culture.
The purpose of this presentation is to help developers, managers, founders, etc. to make an insightful decision about the framework they want to use to create their product.
PHP is the king, nodejs is the prince and Python is the fool - Alessandro Cin...Codemotion
At Namshi, an e-commerce retailer based in Dubai serving the UAE and GCC, we are using different technologies to boost our architecture. We started with a common architecture based on PHP Nginx, Mysql and Memcache: the usual suspects. During last year the architecture changed a lot, using an SOA paradigm to meet expectations and the huge increase of traffic from several millions users throughout the year. But there’s more… In this talk we will show how funny, easy and rewarding is to integrate different technologies in your stack, with PHP always being the king of the whole system.
Beyond the Hype: 4 Years of Go in ProductionC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1SaJaeK.
Travis Reeder thinks the performance, memory, concurrency, reliability, and deployment are key to exploring Go and its value in production. Travis describes how it’s worked for Iron.io. Filmed at qconsf.com.
Travis Reeder is CTO/co-founder of Iron.io, heading up the architecture and engineering efforts. He has 15+ years of experience developing high-throughput web applications and cloud services.
Better and Faster: A Journey Toward Clean Code and EnjoymentChris Holland
Video: http://bit.ly/tdd-talk-2
This slideshow has links, download the PDF to click them.
While this presentation touches on PHP a fair bit, it does make parallels to other ecosystems such as Java and C#/.Net, building toward an approach for building Web Applications in a Test-Driven way.
Have you ever jumped into a legacy software project and gotten to a point where it takes a near-infinite amount of time to deliver any new feature, for fear of breaking legacy functionality you’ve barely begun to understand? Software Engineering can be extremely difficult and maddening. But it doesn’t have to be. We will explore leveraging TDD and OOP principles to make Software Engineering fun again.
Coding exercises supporting this presentation are available here:
http://bit.ly/tdd-vids
My presentation from RedDotRubyConf 2013 in Singapore. Turned out to be a reflection on whether I'd still be a Rubyist in another 5 years, and what are the external trends that might change that. Short story: Yes! Of course. I'll always think like a Rubyist even though things will probably get more polyglot. The arena of web development is perhaps the most unpredictable though.
From its humble beginning as a place where people would pay $5 to get a funny video, Fiverr has grown into the world’s largest marketplace for digital services.
Along the way, our frontend architecture has had to evolve as well - with technologies changing at a rapid pace and frontend developers in general always wanting to work with the latest, shiniest thing, not being adaptable to the environment around you can easily lead you down a road where your stack can’t support your needs & where you’re constantly playing catch-up to whatever it is everyone else is doing.
In this talk, I’ll give an overview of the FE path that Fiverr took — where we started, what we’re currently doing and where we’re (hopefully) going.
Rapid Web Development with Python for Absolute BeginnersFatih Karatana
This slide covers Python basics, Python key features, Web development basis, RESTful architecture key points, Agile Web Development, Python web framework basis and fundamentals.
2019 StartIT - Boosting your performance with BlackfireMarko Mitranić
A workshop held in StartIT as part of Catena Media learning sessions.
We aim to dispel the notion that large PHP applications tend to be sluggish, resource-intensive and slow compared to what the likes of Python, Erlang or even Node can do. The issue is not with optimising PHP internals - it's the lack of proper introspection tools and getting them into our every day workflow that counts! In this workshop we will talk about our struggles with whipping PHP Applications into shape, as well as work together on some of the more interesting examples of CPU or IO drain.
[DevDay 2017] ReactJS Hands on - Speaker: Binh Phan - Developer at mgm techno...DevDay.org
A short description on ReactJS for absolute beginners. The presentation will walk you through why we should use React to develop web applications, as well as a live coding session where you can see it in action.
Automation and Developer Infrastructure — Empowering Engineers to Move from I...indeedeng
Link to video: https://youtu.be/aHHfq4WK9Jw
At Indeed, we're growing quickly, from our engineer headcount to the number of features we deploy. Over the last three years, we’ve had a 6x increase in engineers, and a 15x increase in number of deploys. We’re currently deploying over 700 new features each week. In this talk, we'll describe the infrastructure built to support, scale and automate our software development and product releases, and how any organization can use these tools and techniques to improve release velocity in the face of rapid growth. Specifically, we will discuss Hobo — an easy, standardized way for developers to run our application stacks in Docker. We’ll also describe Control Tower, which manages software releases by unifying all of the information about application features into a single interface. These tools allow engineers to focus on product development, while moving their work from idea to production as efficiently as possible.
Mitch talks about his experiences deploying Elasticsearch for a project at Capital One, how public cloud infrastructure impacted his efforts, and his experiences along the way.
This is my intro to MongoDB talk presented to the Miami MongoDB User Group in February 2015. It's a pretty high level talk, mainly geared for folks that have not used it before.
This is my deck from International PHP in Berlin, 2014. This was just the deck, you cannot see all the demos that I ran while I was talking, no video (sorry).
NOTE: This is not nearly as technical as I like my talks, and all the console stuff was obviously not in the deck. This talk ended up targeting folks who had no cloud deployment experience, and needed a much higher-level overview than the title would suggest.
For the really heavy, in-depth technical stuff I'm going to be starting a webcast, after my return home.
Taking requests over twitter, here and facebook. If you want me to cover something in depth let me know!
http://twitter.com/mitchitized
http://about.me/mitchitized
My talk at MongoTorino about how the use of MongoDB empowers your development teams, as well as tips and tricks to get around common pitfalls (and not so common challenges).
Data as Documents: Overview and intro to MongoDBMitch Pirtle
This is from my talk at BigDive in Turin, Italy 2013. The talk is generally about databases and how we evolved to where we are. There is a lot of command line stuff that is not shown here though - this is mostly for attendees for reference.
This is my deck from Cloud Conference Torino 2013 (http://www.cloudconf.it). I was the post-lunch speaker, so this one is more silly and there was a lot of off-deck riffing, so this is here only for posterity.
I initially planned to speak on cloud-specific stuff, this turned into an intro to MongoDB though.
This is the deck from my talk at JoomlaDay Italia 2012 in Turin. If it is not clear by the slides alone, I'm trying to generate interest and volunteers to see this integrated into the core.
Presentation from CMSExpo in Chicago, May 2010. This was an intro to MongoDB and a bit of a repeat performance from the MongoSF presentation "MongoDB and CMS."
Quick 30 minute session on MongoDB and Content Management Systems. Primarily covers PHP based platforms as they are the most common, however also references RoR and others.
This is my presentation from code|works in NYC 2009 on Thin Server Architecture. The funny animal slides were "sleeper checks" as this was the morning session.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
3. About the speaker
New Yorker
Contributor to many FOSS projects (Joomla! founder)
Budding author
MongoDB for Web Development
Extreme Joomla! Performance
High-traffic projects (Jetsetter, MTV, Food Networks)
Husband, dad, skate punk, metalcore bassist, coach
13. What is Totsy?
Launched last year
Relies heavily on
organic growth
Stampede traffic
patterns - high peaks,
deep valleys
Leading player in their
market segment
14. The challenge
Get out of initial outsourced platform
Didn’t scale
Didn’t perform
Didn’t work
Brittle, difficult to manage or enhance
Essentially a case study on how not to use RoR,
PostgreSQL and Heroku
15. The Original Plan™
Use Joomla! as an application container
Use MongoDB for all non-Joomla! data
Build custom Joomla! extensions, all using MongoDB
16. “Oh yeah, we’re probably
dead in a couple weeks
without the new
platform.” :-)
20. The New Plan™
Primary need was speed and scale, of which the
previous effort was an #epicfail
21. The New Plan™
Primary need was speed and scale, of which the
previous effort was an #epicfail
Tap into existing personal network of PHP talent
22. The New Plan™
Primary need was speed and scale, of which the
previous effort was an #epicfail
Tap into existing personal network of PHP talent
Leverage relationship with MongoDB and Lithium
projects
23. The New Plan™
Primary need was speed and scale, of which the
previous effort was an #epicfail
Tap into existing personal network of PHP talent
Leverage relationship with MongoDB and Lithium
projects
Fully showcase MongoDB, and finally have a site with
no relational engines needed
40. Development profile
Small team: 1 designer, 1 front end developer, 2
engineers and 1 contract engineer
Three months active development
41. Development profile
Small team: 1 designer, 1 front end developer, 2
engineers and 1 contract engineer
Three months active development
Redmine + Git for project management + version
control
42. Development profile
Small team: 1 designer, 1 front end developer, 2
engineers and 1 contract engineer
Three months active development
Redmine + Git for project management + version
control
Local, Development, Test, Production environments
54. What MongoDB did for me.
Encouraged extremely simple data model, producing
tighter, faster, bug-free code.
55. What MongoDB did for me.
Eliminated the need for cache.
Really. No kidding.
56. What MongoDB did for me.
Used GridFS for all file storage. Lithium happily
provided a media adapter allowing us to create a
GridFS plugin to transparently store files in the
database.
57. What MongoDB did for me.
Removed worries about a complicated hosting
environment
58. What MongoDB did for me.
Bought us a ton of time to carefully deliberate next
steps, and come out of permanent crisis mode
59. What MongoDB did for me.
Allowed us to commit every possible crime required for
survival in a frantic, frenetic startup environment
63. My shameful story
code code code commit code pray commit code code
Models had no schema defined
64. My shameful story
code code code commit code pray commit code code
Models had no schema defined
No time for optimization or performance testing
65. My shameful story
code code code commit code pray commit code code
Models had no schema defined
No time for optimization or performance testing
Not a single line of code was run through a harness
71. Why Lithium?
Leverages the latest and greatest features and
practices found in PHP 5.3+
Extremely modular, everything in Lithium is a plugin
72. Why Lithium?
Leverages the latest and greatest features and
practices found in PHP 5.3+
Extremely modular, everything in Lithium is a plugin
Native hooks into MongoDB and other non-relational
databases
73. Why Lithium?
Leverages the latest and greatest features and
practices found in PHP 5.3+
Extremely modular, everything in Lithium is a plugin
Native hooks into MongoDB and other non-relational
databases
Simple hooks for additional customization (GridFS...)
79. Why Lithium?
Promiscuously opinionated framework
Test harness provided
Simplified prototyping
li3_docs - Dynamic code documentation
Many other helpful plugins available and growing
81. What kind of speed?
One evening right when a bunch of major sales
launched, I saw 1,700+ operations per second on the
MongoDB master server.
82. What kind of speed?
One evening right when a bunch of major sales
launched, I saw 1,700+ operations per second on the
MongoDB master server.
This server had a load of 0.68.
83. What kind of speed?
One evening right when a bunch of major sales
launched, I saw 1,700+ operations per second on the
MongoDB master server.
This server had a load of 0.68.
This translates to 17% capacity on a four core
machine.
85. What kind of scale?
We’re using multiple servers for redundancy only.
86. What kind of scale?
We’re using multiple servers for redundancy only.
When we need to add servers, the effort will be greatly
simplified by having sharding already provided.
87. What kind of scale?
We’re using multiple servers for redundancy only.
When we need to add servers, the effort will be greatly
simplified by having sharding already provided.
Probably could have launched on this laptop with
identical performance.