

Alex
7K posts







How do DevOps, NoOps change the software development lifecycle (SDLC)? The diagram below compares traditional SDLC, DevOps and NoOps. In a traditional software development, code, build, test, release and monitoring are siloed functions. Each stage works independently and hands over to the next stage. DevOps, on the other hand, encourages continuous development and collaboration between developers and operations. This shortens the overall life cycle and provides continuous software delivery. NoOps is a newer concept with the development of serverless computing. Since we can architect the system using FaaS (Function-as-a-Service) and BaaS (Backend-as-a-Service), the cloud service providers can take care of most operations tasks. The developers can focus on feature development and automate operations tasks. NoOps is a pragmatic and effective methodology for startups or smaller-scale applications, which moves shortens the SDLC even more than DevOps. – Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq


Imo the @cursor_ai + claude sonnet ai coding hype is blown out of proportion. As an early adopter and heavy user of cursor (at least 1,000 hours so far), here are 3 major issues I've noticed over the past couple of months: 1. The first generated output(s) often contains subtle bugs that could cost you a ton of time and money Most cursor demos I see on my timeline are focused on the UI, popular frontend frameworks and basic backend auth/api. These applications can afford to make mistakes and most aren't deployed to live paying users. But if your application is deployed to production and utilises complex or critical backend logic (i.e. payments processing), subtle bugs begin to emerge. For example, cursor ai generated the payment order manager class in the image attached below. At first glance it may look good for production, but upon close inspection you'd notice that the `totalPrice` of the order isn't updated when a product is removed. As a result, the system will charge customers incorrectly leading to loss in customer trust, cascading errors, and potential lawsuits. The same issue occurs when "refactoring" code using AI or when Cursor attempts to auto-fix problems for you. Often, changes are made to the original codebase that add hidden bugs to the logic. As a result, a lot of time can be wasted reviewing and refactoring AI generated code. Yes I know.... tests should be run before deployment to catch AI bugs, but let's be honest, most devs don't have the energy or discipline to unit test every commit. 2. Inconsistent quality of outputs If you provide the same prompt several times to the chatbot, you may end up with drastically different solutions to the problem. This can happen within the same session of usage or days/weeks apart. In fact, if you copy a previously generated AI solution and ask the cursor chatbot to "review the code for bugs", 9/10 times it finds something wrong. In addition, if you ask the AI any questions that contain suggestions or alternative solutions, it will apologize and refactor the entire code again. Example:- User question: Thank you for your solution. Is it better to handle the payment orders using a Map function or should I use something like Redis? AI response: "You're absolutely right, and I apologize for overlooking that crucial aspect." 3. It can significantly increase technical debt Even when the AI generates a "good" code block solution, it doesn't take into account the entire software design and architecture of the application. Due to the lack of a holistic perspective, problems emerge includes inconsistent error handling, modularity, and data modelling across the app. As a result, the short term quick fix often leads to scalability, performance, and maintenance issues over the long run. Once your codebase has grown to a large, complex web of messy components, refactoring will be a long, painful and costly process. TLDR: Cursor AI (or AI coding in general) is a useful autocompletion tool that can boost your development productivity in the short run, but in the long run, it can waste significant time and energy IF you don't thoroughly review generated outputs. In my experience, Cursor AI is best used as a "junior developer" who often makes mistakes and you have to review their work carefully to "guide" them correctly. If however, you simply "trust" the AI outputs due to lack of knowledge, skill, or willingness to review results, the long term damage will outweigh the initial productivity gains you got so "hyped" about.

iPhone 16 Pro Max would look UNREAL without the Dynamic Island. We’re only 2-3 years away from getting this.
