TWINNY
Twinny is a completely free AI code completion plugin for VS Code. It uses local or API-hosted LLMs to power its code completion and is compatible with multiple tools and frameworks, like Ollama and LM Studio.
Full-text search across article titles and summaries. Refine with sector, year, content type, and reading-time filters.
Twinny is a completely free AI code completion plugin for VS Code. It uses local or API-hosted LLMs to power its code completion and is compatible with multiple tools and frameworks, like Ollama and LM Studio.
An internationalization plugin for Vue.js.
Apple CoreNet is a deep neural network toolkit that allows researchers and engineers to train standard and novel small and large-scale models for a variety of tasks, like object classification, object detection, and semantic segmentation.
Google Search's search quality has been reportedly declining since 2019 due to revenue pressures. In 2020, Prabhakar Raghavan, the former head of Yahoo Search, replaced Ben Gomes, a dedicated search engineer who prioritized user experience, as the head of Google Search. Raghavan's focus on advertising and growth metrics prioritized profit over search quality, leading to more ad-heavy search.
A potential implementation of CSS Grid Level 3 called the “Masonry layout” allows for much more flexibility in designing web pages. Developers would be able to define grid columns, use subgrid functionalities, and explicitly place grid items. Level 3 is still being developed, so the WebKit team is inviting feedback from the web development community to guide the direction of this CSS specification.
Apple's latest version of CarPlay deeply integrates with a car's entire infotainment system. While some carmakers are excited to partner with Apple, others see CarPlay 2 as a threat to their own software platforms and brands. Apple has to balance control over the user experience with carmaker desires, while carmakers need to see how much CarPlay is a factor in car buying decisions.
The FTC has banned most noncompete agreements that will allow tech workers to freely move between jobs, potentially leading to higher wages and more tech entrepreneurship.
This is a network visualization of 50,000 blogs and links.
Django's reputation for complexity is somewhat unfair because it often stems from a comparison with oversimplified Flask examples.
Sponsored
This author built a large-scale service and found certain principles reappearing throughout the implementation. It's useful to prioritize a single source of truth and minimize mutable state when building something from scratch. Developers should also make sure not to abstract things prematurely and not to overuse mocks when writing tests for their code.
In object-oriented programs, infinite loops can happen unknowingly. To understand and fix these issues, you should successively inline the methods on the stack until you have a self-referencing method. This gets to the root of the issue compared to just applying a code-level hack.
This author was rejected for their first promotion at Google after two years in their role for not displaying enough impact. From that rejection, they learned the importance of taking initiative and strategically selecting projects that demonstrated impact.
Developers often over-engineer and over-design software by abstracting things excessively and focusing on hypothetical future scalability. Instead, it's better to prioritize core functionality first, keep the scope reasonable, and have a “good” solution over a “perfect” one.
Software development has multiple feedback loops: the inner loop (immediate feedback from tools), the middle loop (code reviews), and the outer loop (deployment and system-level testing). Code review often gets delayed, unnecessarily inflating the middle loop which leads to slower deployment. This author advocates for code reviews to be the top priority for teams after any urgent production issues so that teams can keep shipping at a smooth pace.
Franken UI is a collection of copy-pastable components that are HTML-first and framework agnostic.
Crawl and convert any website into LLM-ready Markdown. It can be self-hosted and comes with Python and Node SDKs.
Discord builds products with generative AI quickly by identifying suitable use cases early and then prototyping with off-the-shelf LLMs. It evaluates prompts deeply before deploying at scale. Discord leans towards using off-the-shelf LLMs before thinking about using self-hosted ones because it saves engineering resources. Often, if the target problem can't be solved with GPT-4, then it probably can't be solved yet with generative AI at all.
The default 7-character length of Git hashes can lead to collisions in large repos like the Linux kernel. This article analyzes the distribution of abbreviation lengths, finding that while most commits can use short abbreviations, a large number require longer ones (up to 11 currently). It recommends using at least 12 characters for large repositories and referencing full Git hashes if possible.
People should generate ideas independently and quietly first before bringing them to group settings.
This article describes a vulnerability within an application where a poorly constructed regular expression allowed for multiline input, allowing arbitrary Ruby code execution.
A list of Computer Science victories, like arrays, hashmaps, processes, version control, GUIs, and more.
Efficient engineering teams often have a Directly Responsible Individual for each part of their systems.
For many startups, the complexity and cost of cloud services can be replaced with a smaller, simpler setup. A self-hosted $200 infrastructure setup can easily handle up to 100k monthly users without breaking a sweat. The setup consists of PostgreSQL, a load-balanced API with automatic SSL using Caddyserver, and Docker for simple deployments and scaling.
To conduct large-scale A/B tests without sacrificing user experience, Unacademy engineered a solution using AWS serverless tech. Instead of determining which test variant to show after the page loads (causing a distracting flicker), its team selected a test variant before the webpage even reached the user's browser. This was done by running code at the network edge to intercept requests, determine the variant, and fetch the appropriate content from the CDN.
One of the root problems with web styling is the “two-tree problem,” which is the need to maintain separate, interconnected trees for document structure (HTML) and styles (CSS). TailwindCSS solves the two-tree problem with atomic CSS, but its composability is limited due to potential CSS class conflicts. Styled components offer composability, but don't solve the two-tree problem. Inline styles combined with JavaScript can handle most styling needs without running into the two-tree problem.
Constructive feedback can be given in a way that builds trust and strengthens relationships - even to a manager. You should ask for permission to give feedback first before giving feedback and make sure that your feedback actually helps the other person grow. Feedback should be focused on specific observations paired with explanations and actionable advice.
Developers spend most of their time thinking rather than typing code. They read existing code, understand requirements, and thoroughly document possible changes before making them. The actual concrete output of devs isn't always present in the number of actual code changes, meaning developers do a lot of “invisible work.”
Most developers feel that in order to be good at their job, they have to believe in the company's product and find their work meaningful. Just clocking in and clocking out is difficult when work takes up over half of someone's waking hours. As a result, they find that they increasingly attach themselves to the work they do and the resulting success.
Sponsored
With QA Wolf providing the infrastructure to run 100% of your test suite in parallel, and no cap on test runs [11], your team can test constantly and deploy continuously. No additional costs. No assembly required.
Quill is a rich text editor that has official TypeScript support, support for multiple editors on the same page with different configurations, auto-scrolling container detection, a smoother editing experience, and more.
A copyable table component with server-side sorting, filtering, and pagination. It supports key features that are seen in popular applications like Notion and Linear.
ChatGPT works by predicting the next most likely word. After ChatGPT receives text, it breaks down the text into tokens. These tokens are converted into numerical vectors that represent their meaning and relationships to other words. The vectors, called embeddings, are multiplied by a massive matrix of weights (parameters) that have been learned during the training process. The result of the multiplication is a probability distribution over possible next words. ChatGPT samples a word from this distribution to continue the text.
This author was frustrated with bugs, slowness, and limited debugging features in VSCode. Specifically, slow debugging, a limited watch panel, and a lack of GDB integration led them to create their own text editor. Their new editor prioritizes debugger speed, flexible watch variables, and smooth performance with large files. It already includes core features like syntax highlighting, find functionality, and support for GDB and other debugging protocols.
First-time startup founders often fail due to mistakes caused by a lack of experience. Successful founders' first startups often failed because they tried to scale before reaching product-market fit, hired too early, validated with the wrong people, and didn't create a 10x better solution. Successful startups have good founder-market fit and balance user feedback with their own product vision.
Before starting a project, it's important to evaluate what the project really needs in terms of tech.
Companies like Meta enable much faster promotions than companies like Google and Amazon, so it's important to pick the company you work for wisely if your goal is to get promoted fast.
Airbnb's JavaScript style guidelines for writing clean, maintainable, and efficient JavaScript code.
Pnpm just released v9.0, improving the lockfile format and providing better resolution of peer dependencies.
Sponsored
Effective DevOps requires cultures of observability, collaboration, and data sharing. Go from zero to DevOps with instant access to four practical resources [4] from Datadog [4] ↘️
A developer found that a webpage that was used for performance tracking was really slow. They discovered that inefficient SQL queries were causing long delays. By understanding the SQLite query planner, the developer added indexes and a materialized view to improve the database query performance and thereby speed up the page load time.
SVG filters are a way to apply image-like effects (blur, color shifts, distortion, etc.) to web vector graphics and even HTML elements. They can be used to add effects to text on the web, including borders, bevels, textures, and more. This article shows how through code examples.
Developers share their web dev “hacks” and stories. One developer improved a slow SQL scheduling algorithm by refactoring the code and converting sub-selects to joins. Others found creative ways to work around limitations in older web tech, like using system commands for a school prank or inventing a precursor to AJAX for a chat application.
A “WTF Notebook” is used to write down observed issues you may encounter while working. After a few weeks, you'll have a list of problems that will resonate with teammates and now you can present solutions to the team for those problems. This lets you take ownership and initiative within the team, allowing you to make changes and show impact effectively.
Meta has released Llama 3, an open-source LLM. It performs better on many benchmarks - its various-sized models have similar or better performance compared to Google's, Anthropic's, and Mistral's models.
Ripl is a library that simplifies 2D graphics rendering in web browsers by providing a unified API for both canvas and SVG elements. It focuses on high performance and interactive data visualization.