The latest release of Datomic includes some additive new features to enable more architectural flexibility for our customers, especially those building microservices platforms and projects. With the advent of the new Client API, users have much more choice when it comes to their deployment topology. I am also very pleased to announce the new simplified pricing model: Starter for explorers, Pro for production use, and Enterprise for customized licensing/support. Customers at each level will now have access to identical features, including unrestricted Peer counts per Transactor. For more, see the official announcement.
Like many developers, I’ve spent a lot of time thinking about objects. I started doing object-oriented programming (OOP) in 1989, and was arguably still doing it up until 2012. The concept of objects arose in GUIs and simulations, where it is natural to think about sending message to things. Over time though, the idea of messages took a back seat to the idea of locking data up in little containers where each class provides a namespace of functions to operate on it.
You wouldn’t use a toothpick to wear down a mountain. You wouldn’t wear your trainers instead of your racing spikes at a track meet. So why would you use a hand saw to build an infrastructure when you need a scalpel for surgical precision?
Up to this point in the series, we’ve talked about embracing failure, experimenting more and moving faster. We've talked about the "why," now it's time to address the "how."
Yeller is an exception tracking service whose goal is to provide clear, actionable information to developers to take the pain out of examining application errors. They chose Clojure and Datomic as the platform for Yeller in order to make the development process more effective and more efficient.
Clojure and the JVM specifically helped them create a robust runtime service handling spikes of millions of events per second.
You can read all about their reasons for choosing Clojure and Datomic on their blog. You can also watch Tom speak about their decision at EuroClojure 2015.
Brazil is the world's 5th largest country in both area and population, has the 2nd most airports (behind the United States), and one of the highest credit card interest rates in the world. The Brazilian banking industry is both heavily regulated and extremely concentrated. Enter Nubank, whose founders have created a banking alternative in one of the world’s fastest growing mobile markets.
Traditional software wasn’t going to get the job done for Nubank. From the very beginning, the goal was “differentiation through technology.” They needed to plan for growth - in size and complexity to meet the constantly changing regulatory and business rules.
Nubank turned to Datomic, a flexible, simple database that allows them to access multiple data stores simultaneously, process transactions at scale and easily query historical data. Engineers can perform complex analyses on real-time data while the performance of the production environment is preserved. Along the way, the Cognitect team helped steer Nubank’s engineers on the right path as they built Datomic into their business.
Read the full case study to see how Datomic and Clojure are changing the banking industry.
Along with complex electronic documentation requirements, medical professionals face an increasing number of factors beyond just symptoms when considering patient diagnosis. Breeze EHR is creating software with Clojure, Datomic, and React that helps doctors make decisions and simplify workflow. This scalable technology will enable all parties in the healthcare ecosystem to collaborate for positive outcomes across a wide range of goals, and enable the system itself to participate on their behalf during the medical encounter.
Learn more from Tyler’s Clojure/West presentation.
"The future is already here — it's just not very evenly distributed." - William Gibson
Decision, decisions. Users are screaming to pay money for your service, but your current infrastructure is going to pop like a balloon if you let any more sign up. Or your cumbersome deployment process has slowed enterprise sales to a crawl as your small support team runs themselves ragged. Is your competition widening the feature gap due to your lengthy test and release cycle? How to process all that customer data into useful trends? Your decisions today will mean soaring profit or smoldering ruin. How will you solve these problems? Traditional answers to these questions lead many organizations down roads from which they never return. But in the future? Roads? Where we’re going, we don’t need roads...
You may have tried incremental approaches that were so incremental that nothing changed. You may have attempted full system overhauls, only to have the budget and schedule blow up in your face while the problems remained - or got worse. Or you may not even know where to start.
Usually the problem isn’t a lack of skill. It’s not a lack of commitment. Or an aversion to hard work. No, what’s holding you back is a failure of imagination. Most people self-censor (whether they are aware of it or not), limiting themselves to what they think is possible. We tend to stick to what we know how to do or have seen others do. Because we cannot see a path to the future we would like to see, we fail to see that future at all. Ironically, when we come across someone who did manage to transcend these mental limits, we say that they “saw what others could not see”. Actually these visionaries see less than others - they don’t see the walls that block others' view of a better world. They don’t impose restrictions on the future. The difference is that they believe in magic.
So forget what you and the people around you already know how to do. Forget what you have time to do. Forget what you have the budget to do. Forget what you think others will let you do. Instead, ask yourself:
If I could wave a magic wand and make the solution appear, what would it look like?
Ignore how you are going to get there and just think about what things will look like once you arrive. You need to believe.
Working backwards from a “magical” solution will result in a better real world solution than you can get to by crawling forward on your belly around obstacles you find along the road.
"Any sufficiently advanced technology is indistinguishable from magic." — Arthur C. Clarke
With the future of your business at stake, you need a new approach for solving your tough problems. At Cognitect, we help teams break through preconceptions that hold them back. To envision systems unrestrained by the limits of traditional development tools, to design the right solution to grow your business. The results sometimes seem magical - our modern tech stack of Clojure and Datomic enables development of flexible cloud-based systems at significantly less cost than traditional approaches. Technologies now exist that enable small teams to build enterprise-grade solutions on schedules and budgets that not long ago really would have required a pointy hat and cloak.
As noted by former Chief Architect of Netflix’s Cloud Services Adrian Cockcroft, Clojure allows developers to produce "ridiculously sophisticated things in a very short time.” And immutable data - a hallmark of the Datomic database - grants complete auditability of values and transactions from any previous time, plus the ability to model potential scenarios without committing changes. Relive the past? Peer into the future? Datomic may not actually let you travel through time, but the results are just about indistinguishable.
You can attempt to solve your problem with the traditional approach. But are you planning the right solution? Or just what you can put together with the tools and ideas inside the barriers that have accreted across your organizational field of vision? Or will you forget what is and imagine what could be, without preconceived limitations and constraints? Don’t settle for a faster horse - demand a rocket ship. This may be the path less traveled, but it will make all the difference.
We recorded Stu Halloway delivering a two day, in-depth training course on Datomic in Washington, D.C., and are happy to announce that the course is available online today for free. The course covers everything from an introduction to the design philosophy and principles behind Datomic, through detailed dives into the information, transaction, query and time models, to the operational characteristics of the system.
The course is split into 6 modules, totaling over 4 hours of content. You can either consume the entire course or pick the modules that are most relevant to you. You can also download the class and lab materials so you can follow along and get hands on.
We hope you enjoy the experience, and happy coding.
We’re working with a Fortune-100 company to apply simulation testing with Clojure and Datomic. The dev team heard about it and thought it might be a better way to test its unusually complex e-commerce system. It was.
Competition is about tempo. You must force competitors to react to you and adapt to market change fast. Simulation testing with Clojure and Datomic can accelerate your pace. Here’s why.
Rally is a fun customer for us - a company making software for companies who make software. They were listed as a leader in Gartner's 2013 Magic Quadrant for Application Development Life Cycle Management. Their focus is on agile software development, which means their tools have to be fast and responsive - pushing live, actionable information to their users in close to real-time. Rally uses Datomic to provide that real-time collaboration to their backend storage, while at the same time allowing them to de-couple their architecture from those storages and trade them out as needed.
You can read or download the full case study at http://datomic.com/rallys-story.html.
Room Key competes in the crowded, conservative hospitality market. Its CTO Colin Steele chose Clojure before we even spoke to him, and you can read his original account of that decision. Clojure was the right combination of performance and simplicity – accelerating the team’s efforts and codebase. Room Key partnered with Cognitect for support and expertise in Clojure, and we embedded developers, designers and project managers with its team to deliver on its road map. Later, Room Key adopted Datomic to leverage DynamoDB more effectively, since its team built the system natively on AWS.
You can learn more about Room Key’s journey with Cognitect, Clojure and Datomic in this case study.
The Brigade is a software team after our own hearts - a development partner with a keen focus on powerful, enabling technology and a deep sense of the power of good design, in every sense of the word. When building a social music application for their customer, Spotify, they had already chosen AWS as a deployment platform and DynamoDB as the storage engine. They turned to Datomic to add critical database features on top of DynamoDB, and to give their development team the flexibility to keep up with rapidly changing requirements.
You can read more about their story at http://datomic.com/the-brigades-story.html.
Pellucid Analytics is a great partner - enthusiastically pushing the boundaries of technology to bring value to their customers, and willing to give back to the community at the same time. With Datomic as part of their solution, they are bringing mobile and cloud technologies together to solve the complex information management problems of financial professionals. You can read or download the full case study at http://datomic.com/pellucids-story.html.