The recent hype around "AI developers" replacing software engineers is a marketing strategy by startups trying to break into a market dominated by Microsoft's GitHub Copilot. AI tools are still far from replacing human developers, but these startups need to make bold claims to get attention. While AI is changing how software is created, fully replacing engineers will either never happen or is a long time away.
The “Saff Squeeze” debugging technique is used to debug failing tests. It involves progressively inlining parts of a failing test until pinpointing the problematic logic. The result is a minimal failing test, which then makes it easy to fix.
The PostgreSQL extension pgvector has sped up over 150x this past year in its index build times. This is due to binary quantization methods, which reduces index sizes. New indexing methods and CPU-specific SIMD acceleration also helped increase query throughput and reduced latency.
To become a better developer in 2024, get better at using AI tools like GitHub Copilot, use shortcuts often, and focus on soft skills. It's best to use AI in a way that makes you more productive, for example, by automating boilerplate code and finding bugs early.
Engineers need to develop a whole new set of skills to progress past the senior engineer level. They need to learn to scale themselves, navigate ambiguity, and influence without authority through credibility and personal connections.
Perplexica is an AI-powered search engine that searches the web and understands your questions. It uses machine learning algorithms like similarity searching and embeddings to refine results and cite sources.
Dokploy is a free self-hostable platform that makes application/database deployment and management easier. It can deploy any type of application (Python, Go, Node.js, etc) along with all major databases. Dokploy comes with real-time monitoring, docker management, and Traefik integration for routing and load balancing.
There needs to be a focus on MLOps for organizations to be great at machine learning. This means that ML engineers should engage in data work, feature engineering, model experimentation, evaluation, deployment, and monitoring. Experimentation and evaluation should be encouraged. Successful MLOps teams have high velocity, great validation (early error detection), and good versioning practices.
Prompt engineering has evolved a lot and there are certain strategies to get the most out of LLMs. Basic strategies include zero-shot, few-shot, and instruction prompts, where users give the LLM a task description (zero-shot) and a couple of examples (few-shot). Advanced strategies include step-by-step reasoning with examples (Chain-of-Thought prompting) and self-consistency, which is where multiple reasoning paths are generated and then a majority vote is taken for the answer.
Sites allowing LLM bots to crawl them face a lose-lose situation as they incur costs in serving bot requests without receiving traffic in return while also subsidizing the training of a competitor's monetized LLM model.