For startup founders, picking the languages and frameworks that shape the core product will have major implications for as long as that product is around. Languages and frameworks determine the talent you have access to, the kinds of products you can build and, in some ways, even how your team will work together. To learn more about the advantages different technologies bring, we spoke with tech leaders at five Chicago companies.
Core data science tech: Python
Leveraging the world’s largest library of cancer-related data, Tempus uses deep machine learning to pave the way to more personalized cancer care. Senior vice president of engineering Shane Colley said Python’s wide adoption in academic circles makes it a perfect language for its data science team, which works at the intersection of science and technology.
What advantages does Python bring for Tempus?
Tempus' engineering team operates in a fast-paced, collaborative environment to build products with team members with various backgrounds and roles, including molecular scientists, computational biologists, bioinformaticians, UX designers and data scientists. These teams are mission-driven to build a platform that combines clinical and molecular data to help the fight against cancer.
We have to honor the complexity of genomic data and cancer biology, yet continue to innovate at a rapid pace. We've opted for a hybrid approach, which leverages Python for the heavy lifting. When wrapped in Docker containers, Python has beat out all other platforms as a bridge between science and scaled production. Python development skills are critical in our mission across the pipeline of data wrangling and ingestion, analysis and modeling, and production processing.
Which developments are you watching in the Python community?
The Python language, libraries and available tooling are used and accepted in academic, technical and scientific circles. The adoption of Python across diverse subject areas means the platform will continue to improve. In particular, the ecosystem of Python libraries that support machine learning and statistical analysis continue to develop at an incredible pace.
At Tempus, we use libraries like pandas, NumPy, SciPy, scikit-learn and Celery to help with analyses and develop our own custom algorithms. At Tempus, we believe these advancements are integral in our quest to unlock insights in clinical and molecular data, which can ultimately be used in the fight against cancer.
Core tech: React
A Chicago-based e-commerce web development and design firm, Adage Technologies has the opportunity to explore new technologies with every project it takes on. Lead developer Ian Xu said his team has seen a lot of success with the React framework because of its emphasis on streamlining code maintenance.
What advantages does React bring for Adage?
React is great for creating large applications that require multiple components because it allows us to separate and organize our code into smaller, simpler files, allowing for better code maintenance.
Because we’re constantly building new projects from scratch, we have the opportunity to work with new technologies pretty often. We decided to use React at Adage after reading about Facebook's success with React in creating complex applications with less effort put into maintenance and onboarding. With a couple of upcoming applications that were heavily front-end focused, we decided to adopt it as a framework that will allow for better ease of maintenance, as well as faster development throughput.
Which developments are you watching in the React community?
A lot of people are investing heavily in support for React and React clones. React Native is quickly become the most popular way to create native mobile apps for iOS, Android and Windows Phone. That’s in large part because technologies like React Native make it easier to create cross-platform applications using a single code base.
Core tech: Ruby
Wyzant is an online platform that connects students and tutors for one-on-one instruction in more than 300 subjects. Vice president of engineering Ivan Moscoso said Ruby’s focus on productivity and its established developer community made it a great fit for a growing company like his.
What advantages does Ruby bring for Wyzant?
Technologies like Ruby allow us to put more focus on our customers in two important ways. Developer productivity is part of its core, and it's important that developers have the best tools to produce and support our applications. Second, Ruby has a healthy and established community behind it, which is a huge advantage for a growing company.
Which developments are you watching in the Ruby community?
Core tech: Java
Pandera Labs is a Chicago-based dev shop that combines client work with internally incubated products. Principal architect Ben Madore said his team tried out a broad range of the world’s biggest languages and frameworks before arriving at Java as its core language. To Madore, frameworks like Spring Boot and Dropwizard allow Java developers to get convenience without sacrificing the biggest advantages of a strongly typed language.
What advantages does Java bring for Pandera?
The Java ecosystem contains an enormous set of highly functional and well-proven frameworks that provide elegant abstractions over many of the capabilities needed when delivering large-scale applications. Frameworks like Spring Boot or Dropwizard also provide a lot of the “developer ergonomics” benefits that were previously only available to users of frameworks like Rails or Node.js. Although you can very quickly and easily spin up Java applications now, you still have access to advanced declarative programming capabilities from Spring and others that provide for things like caching, transactions, security and persistence.
Finally, I can’t miss the opportunity to call out the benefits of using a strongly typed language (not that the Java type system is optimal *cough* type erasure *cough*). I’ve simply never bought into the argument that types don’t provide value or that enough “test coverage” can replace the guarantees provided by compile-time type checking.
Which developments are you watching in the Java community?
The most exciting developments in the Java ecosystem are not directly related to the language — although Java has seen many meaningful improvements over the last few years, with more coming in Java 9.
The Java platform, JVM, has long been a platform for non-Java languages, but it's becoming increasingly important as languages like Scala, Clojure and Kotlin continue to see adoption. For instance, Kotlin is now an officially supported language on Gradle, Spring 5.0 and, of course, Android. JVM is also seeing strong uptake in the IoT sector, so even if the many click-baity claims announcing “the death of Java” were true (they’re not), the JVM still has a very long life ahead of it.
Core tech: Django
By leveraging advanced analytics and clinical evidence, Procured Health helps healthcare providers ensure that their budgets are spent on treatments and devices that actually benefit patients. Director of software engineering Scott Sexton said the decision to use Django came when CTO Will Danford was the company’s only coder and relied on its built-in functionalities. Now that the team has more resources, it is making a point to contribute its improvements back to the Django community.
What advantages does Django bring for Procured Health?
As a new company, there were a lot of advantages to using Python and Django that lead us to choosing them. Python is a fantastic language that is quick to develop in. There's not a lot of boilerplate, you can get a prototype up and running quickly, and there's a massive amount of open source libraries and frameworks you can draw upon. Python makes it easy to hit the ground running without having to reinvent any wheels.
Which developments are you watching in the Python community?
Python is programming's hottest language. It has everything: Django in Docker containers, serverless computing in AWS Lambda, NumPy and pandas for Big Data analysis, machine learning with SciPy and scikit, amazing speed boots through the PyPy JIT compiler and it's the number one language in fintech now. Also, there's Raspberry Pi modules that will brew your beer and water your plants!