Evolving our technologies and learning how to learn
At Go Tripod, we’ve been in the business of software development for a long time. Although Go Tripod was officially formed in 2009, we’ve got blog posts going back to 2007 which describe the technologies we were interested in at the time. My personal blog goes back to 2003! Here’s a quick list of the things we’ve been into during that time:
- ASP.NET (with MVC using Castle Project or SubSonic)
- PHP & WordPress
- Obj-C
- Adobe Flex & Flash
- Ruby & Ruby on Rails
- JavaScript (React, React Native, Ext JS & Sencha Mobile)
That’s a whole host of disparate technologies. Can’t we just settle on one thing?
Backend Dealings
ASP.NET is still a thing today, just as it was when we wrote about it in 2007. But in 2007, the web was changing rapidly. ASP.NET was clunky, relying on something called ViewState, a giant blob of data that got transferred on every page request. While it enabled rapid application development, the result wasn’t always maintainable or conducive to quick loading. I was an early fan of Ruby on Rails and its organised approach to development (known as MVC), and it seemed like a breath of fresh air compared to the complexity of ASP.NET. We still use Ruby on Rails for our backend systems today, 14 years after we first started researching it.
On the way to 2019 though, we continued evaluating new software. Microsoft got on the bandwagon with the mostly-excellent ASP.NET MVC framework, but the Rails community was cranking out loads of great libraries to support an excellent foundation. PHP did the same, with frameworks like CakePHP but, at the time it was released, PHP had a reputation for being a bit of a mess.
Front & Centre
The same applies on the frontend, though to a lesser extent. JavaScript’s always been the lingua franca of the web, powering rich interactions in the browser. But to get round some of its quirkiness, we had PrototypeJS in 2005, MooTools in 2006, and jQuery in 2007.
jQuery inspired me to create Fizzler, a selector engine for C# in 2008. It was improved and redesigned by Atif Aziz, and he still maintains it today.
A big one for me was the release of Ext JS in 2007/2008, and I went on to author and co-author several books on this rich framework.
In 2013, ReactJS was released and was as much of a game-changer for frontend development as Ruby on Rails had been for backend. We jumped on it, and its sibling for apps, React Native, to let us build complex user interfaces in a way that was maintainable and testable.
Why tho?
What makes us continually search for a better mousetrap? Looking at the bigger picture gives a clear reason: the difference in developer experience between jQuery in 2007 and React in 2019 is huge. A better developer experience means that we can provide an end product that is better tested and is more usable. The gap between ASP.NET and Ruby on Rails is a bit more muddled; we could use ASP.NET MVC now, which is a much better product. But Ruby on Rails wins out, because it’s simpler to use and has a huge lead in community-provided libraries to help us turn out top-notch projects.
But…
There’s an outlier here. Something that has remained constant, like a comforting blanket. WordPress was released in 2003 and remains incredibly popular, powering over half the world’s websites. It’s not perfect, but it’s developed in the open and has a massive support community. We’ve used it for years and hope to keep on doing so for years to come. The recent release of Gutenburg gives us the chance to let users build amazing page layouts with ease, and using partners such as WPEngine means we can keep things secure and backed up without any worries.
Conclusion
The world of software moves quickly, but the goals remain the same: make great experiences for our clients and their customers. The technology should fade away into the background, but we know it’s there, quietly powering and empowering.
Got an idea for a project?
Need a website? Web-enabled software to streamline your business? Just some advice?