Aleksei Ivanov

https://aleksei.dev

85 posts · 5 Votes

Tech 64% · Life 22% · Culture 9% · History 1% · Music 1% · Science 1%

Subscribe via RSS

  1. Move irresponsibly and break things

    With vibe-coding it has become easier than ever to move fast. “No mistakes” might as well be engraved into every AGENTS.md file. This issue is that it doesn’t help. I would be hypocritical if I said it is useless or that I don’t use it myself. But with these posts my aim is not to bash the technology, but to make people aware of the trade offs. For instance, just recently I made a completely functional piece of software in about 6 hours without looking at the code. Two caveats: During those 6…

    0
  2. The startup founder virus

    I have stumbled upon a Reddit post talking about the experience of Y Combinator. About ludicrous growth, peer pressure and all that. Huge stress for an opportunity to “think bigger”. You see, I do not wish to diminish the authors efforts, in fact any of the YC backed businesses. However, at the same time I feel like this culture is exactly part of the problem and why we cannot have good things. Take AI for example: it didn’t come about because somebody poured billions upon billions in the field…

    0
  3. Nobody knows how the algorithm truly works

    We live in the real world, and in the real world the truth is: the more people see you, the more opportunity to earn money you have. I have been thinking… internet is supposed to be decentralised, but in reality there are several major corporations on whom you depend for your traffic. Sure, it is supposed to be free, but there is a catch: you have to pay with your time. What search queries people use? What exact words you must use in your texts in order to please the algorithm? Nobody will or…

    0
  4. Happy birthday, Multify

    Today marks a year since my first commit into git repository named "i18n-proxy". The name itself highlights the approach I’m taking with this project: I didn’t spend time contemplating with a name (I usually do). I just named the thing and moved forward. Multify is my first real experience of doing things that don’t scale: manual onboarding, minimal technical complexity at first and iterating on it later. Every engineer is familiar with temptation to do things right the first time. Experience…

    0
  5. AI will never help you, really

    For the past several days I have been debugging an important part of infrastructure in project. You know, the type of bugs which appear randomly, not documented thoroughly and are hard to catch because they appear occasionally in production. Every time I analysed it with Claude it confidently came up with random stuff to throw at the wall. Only half the time it made sense. Part of the issue was a “communication” problem — I might have not provided enough context to it. The other half it skipped…

    0
  6. Not all test coverage is created equal

    There is an approach called defensive programming. It is not about defending your tab vs space choices in front of your colleagues–it is about anticipating failure mode and writing the program in a way to handle such failures. One of the most popular ways to do this is to use try … catch structure: “try doing this and if anything goes wrong — catch it and report”. It is a decent approach and whilst there are other ways to achieve the same thing (for example error values in Go) it works out fine…

    0
  7. Stop building rainbow AI slop

    I have been thinking the other day: a guy posted his university project for others to see. It was an obviously AI-generated design: purple gradients, rounded corners, weird typography. It is strange, because if he took a 10 year old Bootstrap library and used jQuery for simple logic it would be much more genuine. You simply cannot trust these generated projects—not because the authors are malicious—but because the line is so blurry. One site could be presenting a truly great idea, but through…

    3
  8. Sentinel values

    Have you ever wondered why return -1 is used in a program when nothing is found? You might have thought that is because -1 doesn't make sense in the context, so it is safe to agree to use some arbitrary value that is not used normally. In fact, you would be correct. But it goes deeper than that. -1, as well as \0 string termination sequence, None in Python, null in JavaScript, nil in Go and so on — all of them share the same commonality: they are sentinel values. Their purpose — to simplify and…

    0
  9. Inertia and the flow state

    I don’t know why but it takes a while for me to switch between context. Not small tasks but things like engineer mindset, marketing mindset and so on. If I get into one mode it is difficult to switch into the other and back. I guess it is a bit similar how when a developer is getting pestered by countless meetings and questions from the management — the tax of getting back into the flow is just to great. So much so that occasionally I just give up and don’t do anything that day. Because why…

    0
  10. Don't start with ChatGPT, start with the map

    One of the “sins” of the sprawling new disciplines is vague terminology: different people come up with different names because the space is not yet occupied and the industry is still very young and growing rapidly. Take “AI” for example: nowadays it is large language models and specifics all around them. Tokens, context windows, hallucinations… In fact, the term AI itself is confusing because it is just too broad and undefined. In computer science and engineering classes–when teaching machine…

    0
  11. Graphs can be exciting, but you need to be truly involved

    I have come to notice that I like looking at the graphs, which is weird since it sounds like something exceedingly boring. Google search console graphs get me excited because they give a sense of control. While I cannot control Google's algorithm and it is still a gamble, I can control my own content and my sites. It is satisfying how I graphs help predict the future. The first sense of this I got when I realised that these graphs show real demand by real people. It is fascinating how you can…

    0
  12. Security is a composite system

    Curious thing, internet security. Each measure on its own might not be effective, but when combined together in a smart way they can create a good impact. For example, Crowdsec allows to prevent malicious actors to go through. But it doesn’t prevent them from bashing your server with thousands of requests. They can still get through, in a manner of speaking. On the other hand, a simple rate limit will prevent this, but it won’t help you discerning between bad and good actors. Combine both of…

    0
  13. Ads are useful about 1% of the time, don't use them to kill your reputation

    Imagine this: you put earbuds on, switch on the podcast and start doing chores, washing dishes, handling plants, etc. Anything that requires your hands to be occupied. After a while, when you are still in the flow an abrupt "and this is a good place to mention our sponsor begins". So what you are 18 minutes in? Clearly you would like to listen for a couple minutes about an unrelated sponsor with an unrelated product that is not targeted to you. Oh but that's not all. How about you listen about…

    0
  14. You are probably under attack and you even don’t know it

    If you have a public-facing resource on the internet (usually a web site) there is a high chance it gets scanned periodically by numerous bots. In fact, they might start doing this less than a minute after deployment. Security, he-he-he. https://youtu.be/40SnEd1RWUU How do I know? At Multify I host language translations for multiple clients. Essentially, I host separate domains which increases attack surface with each newly connected domain. The service proxies all of the requests to upstream,…

    1
  15. You are probably under attack and you don’t even know it

    If you have a public-facing resource on the internet (usually a web site) there is a high chance it gets scanned periodically by numerous bots. In fact, they might start doing this less than a minute after deployment. Security, he-he-he. https://youtu.be/40SnEd1RWUU How do I know? At Multify I host language translations for multiple clients. Essentially, I host separate domains which increases attack surface with each newly connected domain. The service proxies all of the requests to upstream,…

    0
  16. Systems thinkers are the future

    Have you ever wondered how many people taking on software engineering jobs actually enjoy them? How many of them are passionate about the tasks they are doing? It is not a question about being good or bad developer. In fact, it might actually have reverse correlation. The point I’m trying to convey is that not everyone is cut out to do everything and that’s more than okay–that’s actually healthy. Because it makes society diverse. Now, continuing my previous post on junior developers I want to…

    0
  17. The future of juniors in the “age of AI”

    It is said that junior developers are no more: companies don’t need them because it’s “easy” to replace them with language models (I would not go so far as to call it AI). At the same time, new people coming to the industry are questioning themselves whether they should pursue it or not. I think both angles are incorrect. You see, companies never really needed just there programmers. They required problem solvers. And for LLMs to solve problems elegantly and eloquently they need guidance.…

    0
  18. Co-authored by whom?

    Claude Code is a tool that you paid for. Usually, you don’t get advertisement in a tool you have paid for. So when Claude appends “Co-authored by Claude” to every commit message, it is only natural it would raise an eyebrow. It’s not a simple matter, either: disclosing AI generated content might be a good idea, but it has so many edge cases you can cut yourself if you are not careful. First of all, it might generate this for a commit it didn’t even contribute to (part from the commit message).…

    0
  19. Interfaces as documentation

    https://www.youtube.com/watch?v=v4F1gFy-hqg This short talk by Matt Pocock has some great insights about how to work with AI and code on a professional level. Obviously, vibe-coding is not an option when you are doing mission critical tasks. And any project becomes mission critical once it reaches commercial success (that is, if you care about keeping paying customers). Interfaces are a great way to separate the responsibility between design and implementation: let AI do the "dirty work" of…

    0
  20. Special treatment

    I have noticed that I get unusual feeling sometimes while meeting a person or visiting a place. It doesn’t really have to do with the person or the place, but with my comprehension of it. On one occasion it can feel official or even hostile, while other times it is chill or friendly–with the same person or the same place. Maybe even things. I can’t put my finger on exactly why this happens, maybe it is my inner feeling. But I suspect it is something else, something that I carried through all my…

    0
  21. They simply don’t have the time to test it

    Leading AI labs have been churning out models and features left and right for the past couple of years, that’s because they consider it an arms race. Anthropic in particular has been speeding up recently with Claude Code and ecosystem around it. Code, Cowork, Excel, Chrome extension… and then for Claude Code itself they started creating more sophisticated features: Remote control, Dispatch, and now–Design Did you keep the count? It is understandable, they race to grow to a trillion dollar…

    0
  22. Your life is your life’s savings

    An interesting thought I got while listening to one of Alex's Hormozi videos. He might not be always right or you might not like him, but the premise is true and simple: you either put effort into things things that matter to you or you put effort into things that matter to others. There is no third option. It’s so obvious, yet most people would confront this with “it’s not that simple”. And you would be right–it is not. And that’s the point, sort of. The idea of our limited time on this planet…

    0
  23. Future hackathons

    I have stumbled upon a university project someone is doing for their diploma. The idea of the product is alright, but the site was clearly create by AI. Is it good or bad? This got me thinking: prior, excellent teams have shown their mastery during hackathons. A bunch of people gathered together and dug through the tunnel, delivering often simplistic—but working and original product in 24 or 48 hours. Do we ban AI use during hackathons now? Or do we encourage them? How do we rate the work of a…

    0
  24. Student or apprentice?

    Students nowadays have it hard: they to study more and they don't have time to dive deep into anything they study. Moreover, they can't even always evaluate prior to committing. Simply because the field is so vast that by the time they realize it might not be for them — it is too late. Higher education is important, but most of the time not as a career but in the same way we read literature or study history in our leisure time. To broaden horizons of our thinking. And of course, with generative…

    0
  25. Speed and complexity; now and then
    0
  26. ADD: Anger Driven Development
    0
  27. Code is not even close to half the battle
    1
  28. Check your surroundings
    0
  29. Ever heard about declarative music?
    0
  30. I almost missed Artemis II
    0