Thanks to everyone who's contributed to gorilla/* over the years!
523 karma · joined January 28, 2011
CTO at Config (https://config.com)
Personal website: https://krieger.io
[ my public key: https://keybase.io/cjk; my proof: https://keybase.io/cjk/sigs/ItSjdGcDzRZHDPvBRf-EIRP4QOJEdA26KPBHvi7f3Nk ]
Thanks to everyone who's contributed to gorilla/* over the years!
As far as I understand it, though, these explanations are based on similar code contained in the training dataset, rather than any kind of ability to reason about what's actually going on, no?
lol
I'm sure that for simple tasks, AI-based pair programming will offer some level of acceleration, but until it can understand the semantics of the code it's generating, and how it fits into the broader _system_, it will not be able to be trusted. I do not look forward to a world where I have to spend my time debugging AI-generated code.
I ended up being fairly proficient with the "modern" CMake language after investing a ton of time into it, but as the size of the company grew, I ended up being a bottleneck. Every other team found themselves subject to CMake's many footguns, and I'd end up having to step in to help.
It was maddening, but I 100% get that other teams just wanted to focus on getting their work done, rather than fighting with a poorly-documented and frustrating build system.
I, for one, would be very happy to see a new CMake scripting language. Ideally, one that is a lot more friendly for beginners and occasional users.
For a brief period of time, I self-hosted Ghost[1], which was great from a writing perspective, but I was really dismayed with how crappy the average request latencies were for visitors.
[1]: https://ghost.org
I would also say that dev environments can be “streamlined” and “repeatable” while allowing for personal choice of editor and whatever other ancillary tools the developer is productive with. They’re not mutually exclusive.
We should be talking about ways to either 1) make it possible to develop performant and resource-sensitive web apps, or 2) make it dramatically easier to make native/native-feeling apps in a way that doesn’t involve so much legacy cruft.
The lack of a solid reason #2 is why Electron-based apps exist and are thriving. Making native apps for each individual platform is hard and resource-intensive.
I have long been a proponent of native apps, but I will be the first to admit that it’s not that simple for small/resource-limited teams. The rise of Electron/etc. is a failing of the pro-native segment of developers. We need a better alternative.
I think the thing that originally hooked me were Drew Neil's Vimcasts[1].
I do agree with others here, though, that ~2 weeks is not enough time. You need to force yourself to live with it for longer than that, and any time you encounter a pain point or something that you feel should be less cumbersome, have the patience to Google for solutions.
Personally, I feel that time investment has been worth it, but YMMV.
I'd also probably recommend getting your vim/emacs/whatever setup working really well for one language at a time, rather than trying to make it work for a bunch of different things all at once. Getting e.g. LSP-based autocomplete to work is a very language-specific effort, and is far from plug-and-play.
If it's helpful at all, I publish and version control my vim config on GitHub[2]. I can't guarantee it'll work on anything but my machines, but feel free to send Pull Requests. :-)
[1]: http://vimcasts.org
If you’re writing something safety-critical, sure, use a memory-safe language like Rust/Go/etc. Otherwise, I think C++ is still plenty viable.
Personally, I'm pretty inclined to shy away from VC unless it's unavoidable for the domain the company is in (e.g. hardware companies, which tend to require an unbelievable amount of capital outlay just to survive development + manufacturing).
Looking forward to watching this black and white version. (Note: available on Amazon for anyone else looking for it.)
I try to spend time learning things that interest me personally, and when that happens to overlap with things I deal with at my day job, great. If not, oh well.
I don't really consider how long it might take to learn something if it's interesting to me, and I tend to dive pretty deep, even if I don't get to "expert" level. I figure if I need to become an expert in a thing, that'll come with time.
I’d say: if you want to be successful, push yourself. All of these things are skills that can be learned.
They allegedly stopped doing this in 2017: https://variety.com/2017/digital/news/google-gmail-ads-email...
Modern “GitOps”-based deployments that rely on webhooks or polling are fine, but it feels so disjointed to me to `git push` and then have to go watch some other system to see if the deploy succeeded.
I never penalize or reject candidates based on having a multi-page résumé, but I tend to see a strong correlation between candidates with great one-page résumés and great written communication skills. It shows that they've spent the time to consider what's relevant to the hiring manager/recruiter/etc.
IMO, keep the résumé short and sweet, and stick to the highlights, with a heavier emphasis on more recent experience. If you really want to dive into more detail on something, write a cover letter tailored to the position/company you're applying for.
Fastmail is reliable and affordable, has great customer service, and supports the sieve language for defining filtering rules. Really tough to beat.
Sigh.
Current incident report: https://slack-status.azureedge.net/2021-09/06c1e17de93e7dc2
DNS outages are why we put status pages on different domains with different DNS providers. :-)
This.
I often find myself saying “you can be feature-driven, or you can be date-driven, but not both.”