I’ve been referencing that Divio doc since 2021, possibly earlier in 2020. I even linked to the document in early 2022. It’s quite likely that it simply wasn’t crawled by the Web Archive before May this year.
I’ve been referencing that Divio doc since 2021, possibly earlier in 2020. I even linked to the document in early 2022. It’s quite likely that it simply wasn’t crawled by the Web Archive before May this year.
That’s why reviewers should also watch out for comments to ensure their quality. Hence why I said it’s part of a programmer’s job, not some afterthought.
Comments get stale and over time transition from: accurate to outdated, to eventually flat-out lies.
Sounds like some people aren’t doing their work enough then. Code comments are part of the work that a programmer should do, not an afterthought. Who else is gonna update that code if not the programmer? And if a programmer isn’t supposed to update their code and we can just all write clean code that would somehow make us all be better engineers (yeah, I use this title differently from programmers), then why are code comments even a thing?
Self-documenting code is good and all, but so should there be good comments.
Sort of interesting that this documentation system appeared in two different places that don’t seem to reference each other.
Hard disagree that documentation is a waste of time. I think you’re just failing to see and use documentation correctly.
Tech documentation should never:
Documentation can
Writing these out is also good for people who don’t read code or don’t have the time to read code, eg your tech lead, your manager, Tech VP, etc, people who should have some idea of your system or solution, but not necessarily the implementation detail, so that they can do their work more effectively.
There’s also a culture where a project, or a sufficiently complex problem, starts with a tech proposal, which would properly capture the problem and do solution planning. It’s easier and faster to change than a PR, and reviewers can read that for context. In any case, this democratizes knowledge, instead of creating more tribal knowledge.
Many of these meanings seem to be captured in some modern solutions already:
- We plan to provide a value, but memory for this value hasn’t been allocated yet.
- The memory has been allocated, but we haven’t attempted to compute/retrieve the proper value yet
- We are in the process of computing/retrieving the value
Futures?
- There was a code-level problem computing/retrieving the value
Exception? Result
monads? (Okay, yea, we try to avoid the m word, but bear with me there)
- We successfully got the value, and the value is “the abstract concept of nothingness”
An Option
or Maybe
monad?
- or the value is “please use the default”
- or the value is “please try again”
An enumeration of return types would seem to solve this problem. I can picture doing this in Rust.
2 things I like about golang is just 1) the ease of getting someone to start work, and 2) goroutines. I have no complains about goroutines cause I’ve barely used it, and when I do it’s been fine. The first point though, I’d say the simplicity of the language is a double-edged sword — it’s easy to learn with little surface to cover, but it forces you to implement a lot of basic machinery you find in other languages by yourself, and so your codebase can get clunky to read really quickly, especially as your project grows.
Not trying to dissuade you from learning golang tho. I think it’s a good language to learn and use, especially for small simple programs, but it’s not the great language many try to say it is. It’s… fine. There are many reasons why it grinds my gears, but I’m still fine with using it and maintaining it for prod.
Ehhh, golang’s pretty down there for me too. Sure, you have types, but the way you “implement” an interface is the sussiest thing I’ve seen in most well-known programming languages. Not to mention all the foot guns (pointers for nullables is a common one, and oh, if you forgot that a function returns an error, and you called it for its effects, you’ve just built a possibly very silent bomb) you end up building into your programs. I use in prod, and I get scared.
That’s why I get out of my car, look if I’m getting in someone’s way, and adjust as needed.
Takes no more than a minute to be civil and nice to other people, especially to those with special needs.
Not sure why artists are brought up here but I guess that’s one of the highly affected groups.
Just to talk about that particular consequence, however, I don’t agree with your take. There are AI trained on works of specific artists, and the end result is that the AI is really good at producing work that’s similar to that artist’s work, effectively creating an alternative to that artist, even if it’s of slightly lesser quality and a lack of depth of the original. While this would likely not affect the artist in the short term, in the long term, new prospects who don’t yet know the artist well enough would likely be unable to tell the difference in quality, and may even go straight to the AI model since that’s distributed cheaply or even free. It may also negatively reflect on the original artist to people who don’t know the artist, as the works from the AI would likely be more abundant, and people not in the know may think that the original artist was in fact just producing their works through AI. It is highly discouraging for artists who have worked hard to hone their craft, only to have people think that their works have little difference or even a mimicry (don’t underestimate misinformation).
There has been many instances where such training was done without the knowledge of the artist. Imagine just waking up one day, and finding that there’s someone or something that can very closely reproduce your works, one’s you’ve taken many years of practice to produce, of which its quality is almost unique to yourself. There’s a blatant lack of respect for the hard work that people put into their craft, one that seemingly belittles their blood and tears, and could even be a mockery of their existence. Some artists don’t have other jobs; their art and craft is their job, and some may have even sacrificed learning the skills needed for other jobs to pursue their passion.
Saying that AI is not intended to replace artists, but to improve accessibility, is like saying ATMs weren’t meant to replace bank tellers. True, there’s much less skill required for bank tellers, and getting cash out of banks is an important process that should be swift with almost no errors, so replacing bank tellers with ATMs is a general good, except for the bank tellers, which then banks can retrain them for other jobs. Since then, the job has virtually gone extinct, and almost nobody would want to become a bank teller, and if anyone would like to, they would need to perform better than ATMs. Artists require great skills and creativity, many of which are not easily trained or obtained. Seeing an automated system produce works that are acceptable by most people would either greatly discourage new artists or perhaps even entirely remove the idea of becoming an artist for most people. It raises the barrier to becoming an artist: not only do you need to stand out, you also need to be good enough such that people can’t just train an AI model on your work to produce results that are highly indistinguishable from yours. How many more years do people need to train to be that good? For those with a job but wish to become an artist, abandoning their job to focus on their craft will likely become a much more difficult choice to make. Also, I don’t doubt this would further rise the prices of commissions due to how much work artists would have to put in, and this would only get worse at a rate that’s much faster than a scenario without AI.
So a line should be drawn somewhere. AI trained on public works or artist-approved works are definitely okay. All other options will likely need further discussion and scrutiny. We’re talking about the possibility of ruining an already perilous career path, whose works are coveted.
They’re literally burning bridges after crossing them huh. Web scraping is illegal? Their fucking search engine was powered by a web scraper.
WEI is plain anti-competition to me now. Most, if not all, of their stated reasons are now just facade to me.
Fuck Google. I know this isn’t constructive or helpful, but fuck em.
Love a good commit message. I wish I could say what we perceive as “good” is instead thought to be “normal”, but we aren’t there yet I guess.
If the word “imperative mood” is hard to grasp, this is what I do. I just finish this sentence in less than 50 - 75 words, length depending on consensus.
Add more details in the body if needed.
This sort of style extends to PRs/MRs as well.