Today we’ll take a look at Git’s internals and the low-level details of C++… to smoothly move on to Stable Diffusion and how it has delighted internees. And along the way, we’ll take a look at Slack’s new Pricing.
1. It’s time for an adventure… with Git and C++ internals
What, the vacations are over! It’s time to get down to authentic “Software Craftsmanship”, not some image synthesis or other child’s play.
And can you point me to more “true” engineering than git internals? GitHub seems to come to similar conclusions, as this week it released a series of texts on how this most popular version control system behaves “under the hood.” I was under the impression that I reasonably understood what it all looked like – you know, the Merkle tree, the non-mutated structure with the cryptographic verification, and so on. However, the series, as mentioned above, brings a totally new level of enlightenment.
I feel this is precisely the kind of publication I needed to better understand the release notes of successive Git releases. In each of them, the developers brag about performance-revolutionary changes to data structures. GitHub’s series builds on just that, outlining the role of each code construct and the interrelationships between them. At the time of writing this summary, I am just reading the fourth part of the series (five have been published so far), and I already know I will finish it… Although I suspect that after the completion, I will have to start from the beginning to consolidate all the facts – because these articles are up to overflowing with knowledge.
Well, git is nice, but if you feel that pesky version control is not enough engineering-engineering, I have something even “better.” How many of you have had the opportunity to write your first main()
method in C++? I’ll frankly admit that until now, I had never thought about what had to happen before the said main()
runs the now legendary “Hello World” expression. By complete coincidence, however, I came across a text on exactly this topic last week. A General Overview of What Happens Before main() turned out to be a really interesting publication, even for someone whose relationship with C++ has been nonexistent since college (so my relationship with it largely resembles that with Assembler). Therefore, I recommend it.
Okay, I probably already “overworked” you with two heavier texts to start, so let’s fly on to a bit more leisurely part of the summary.
Sources
2. Slack is severely limiting free accounts, much to the delight of competitors
The first of September is not only the date when the vacations end. It’s also when Slack (one of the most popular messengers) introduces new pricing – and one of the steamy kind. After all, until now, Slack allowed 10,000 archived messages that “rolled over.” However, this was a number reasonably sufficient when, for example, we set up Slack for the needs of a narrow circle of friends. At the beginning of September, however, the situation changes. Now, regardless of the number, Slack will store messages from the last three months.
The company claims that the changes should work out well for most customers, who will now not have to limit their communications. How much of a stretch this explanation is is proven by Zulip’s publication Why Slack’s free plan change is causing an exodus. Using simple calculations, they show how a small percentage of Slack users will realistically benefit. Of course, they’re not doing this gratuitously – Zulip is a company that also makes a group chat messenger itself and is eager to profit from the image crisis of its biggest competitor – but it’s still hard to argue with the arguments they put forward.
This is another, after Heroku, described a week ago, very unpro-consumer pricing change. It will be interesting to see if we have a coincidental confluence here, or in the pursuit of more vital monetization – when both VCs and exchanges are expecting real reasults from technology companies – we should expect more such announcements.
Sources
- Everything you need to know about our first price change and plan updates
- Why Slack’s free plan change is causing an exodus
3. Stable Diffusion had its premiere…. and the community went wild
OK, we laughed at the beginning about AI Synthesis, but it couldn’t be missing from our new edition. Especially since we had just announced a real revolution in this field, in the form of Stable Diffusion – the first model that was realistically going to be available for widespread use, with open code and the possibility of modification by the community. Stability.AI’s baby made its way into our hands, and…. the world went crazy. Literally: Stable Diffusion is probably the product that best lived up to the hype since From Software’s Elden Ring.
The Internet has been flooded with texts praising the Stable Diffusion to the skies, calling it the best of all models (which to me is a bit of a stretch, but about that in a moment). There is no shortage of tests, comparing Dall-E, SD and Midjourney on selected prompts, and ones extolling its capabilities like Stable Diffusion Is the Most Important AI Art Model Ever or Stable Diffusion is a really big deal. And I’ll admit, there’s something seductive about the fact that such a powerful tool has found its way into the hands of experimenters worldwide – the results that Reddit users are achieving are truly impressive. The general consensus is that Stable Diffusion is the best model for style transfer. However, I have to admit that I find it much harder to create something as eye-pleasing as MidJourney, for example, makes possible. Stable Diffusion simply requires a lot more playing around, configuring options, and broadly speaking, “tinkering.”
Simply Stable Diffusion has a steep learning curve, but what’s the internet (and the upcoming vacation) for? There’s no shortage of materials – PromptMania, for example, has created a PromptBuilder for SD, allowing you to choose the suitable styles, and it’s not hard to find complete guides popping up like mushrooms. The Reddit community mentioned above is also eager to share its battle-tested prompts.
The key differentiator, however, is that Stable Diffusion can be fired up on a local machine. The process isn’t overly complicated, but it has a few nibbles, so if you want to play around, I found a proper tutorial for running SD on MacBooks with an M1 processor – have fun. Maybe next time, you will be the one to win first prize at an art contest – like Jason Allen, who achieved this thanks to an image generated with MidJourney.
But lest we forget about Dall-E, here’s another new feature from them. Last week, they announced a new feature – the ability to …. generate missing image elements. I don’t know if you’ve used Photoshop, but it’s like their ‘content-aware fill.’ However, the one that guesses what the world around a given piece of art could looked like.
Well, Once again, we couldn’t get away from the topic of image synthesis…. maybe next week then? What am I deluding myself – probably some company will come up with a new revolution that will not let me remain indifferent.
Sources
- Stable Diffusion Is the Most Important AI Art Model Ever**
- Stable Diffusion is a really big deal
- Stable Diffusion vs Midjourney vs DALL.E2
- StableDiffusion Reddit
- PromptBuilder dla SD
- Stable Diffusion Prompt Engineering Guide
- Run Stable Diffusion on your M1 Mac’s GPU
- An AI-Generated Artwork Won First Place at a State Fair Fine Arts Competition, and Artists Are Pissed
And, there may not be a Weekly next week. I’ll be right back from vacation, so you understand 🏝