People have often asked me how I am able to finish work without having to work nights and weekends. How come the application is so stable when the other teams with more people are working all the time, while their systems are crashing and burning?
There was one particular project I remember where the manager walked over one day and told me that even though I had to implement the hardest part of the project which nobody else volunteered to do, I was on time — how did I do it?
This article is written by our sponsor nautilus2k.com which is a new startup trying to help other startups building data-driven apps on the Microsoft .NET Core/ Azure tech stack.
Is this luck? Can this only be replicated by hiring someone else with these characteristics?
Some of it is the ability to estimate correctly and stick with the estimate under pressure. Some of it is innovation.
Did you know that when you implement projects for different customers, you are repeating a large portion of the work every time? Most applications are a database connected to a front-end. I realized a long time ago that the data access layer is essentially duplicated work, which can be automated.
I remember a time when we code generated several weeks’ worth of stored procedure work in a few hours. That saved us a lot of time and effort while ensuring that there were no human errors!
I have tried various code generation schemes over time — from generating stored procedures to C# code. Code generation is useful when combined with inheritance because most logic can be placed within the base class, and the child classes corresponding to each database table end up being configuration.
This means that you don’t need to keep code generating the classes when you need to make a change — because that kind of change can be done in the base class.
Arc — our Rapid Application Development Platform is the latest re-imagining of the best system that can be built on these ideas.
- Create your database schema
- Sprinkle our DB magic
- Code generate most of your data access layer
- Start writing your business logic with simple, natural & intuitive code