Daniel Jeffries’ wildly popular Learning AI If You Suck At Math series is back after a 3-year hiatus. In part 8, Daniel asks (and answers) the question: Can AI make beautiful music?
In this episode we dive into teaching Go, asking questions like, “What techniques work well for teaching programming?”, “What role does community play in education?”, and “What are the best ways to improve at Go as a beginner/intermediate/senior dev?”
Martin Kleppmann, author of Designing Data-Intensive Applications, shared some insights into the business of book-writing.
I am happy to report that writing this book has in retrospect turned out to be a financially sound decision. These graphs show the royalties I have been paid since the book first went on sale.
Ruby is my favorite tool for slightly-longer-than-one-liners, but I don’t often reach for it directly from the command line. This little cookbook might change my mind on that:
A shell utility like
bashprovides built-in commands and scripting features to make it easier to solve and automate various tasks. External *nix commands like
paralleletc can be combined to work with each other. Depending upon your familiarity with those tools, you can either use ruby as a single replacement or complement them for specific use cases.
This is not a tutorial on using Git! To follow along I advise that you have working knowledge of Git. If you’re a newcomer to Git, this tutorial is probably not the best place to start your Git journey. I suggest coming back here after you’ve used Git a bit and you’re comfortable with making commits, branching, merging, pushing and pulling.
Command (line? I’ve never called it that) mode is indeed where much of Vim’s power lies. In this post on Thoughtbot’s blog, German Velasco explains search and replace, command repetition, ranges, and more.
This is a dizzyingly thorough road map to learning all things Data Science. I like how the repo owner includes checkboxes alongside each linked entry to track their progress. That means you can easily fork the repo and track your own progress as you go. 👌
A narrated redesign packed with typography, brand, and color advice
A formalization and continuation of this old Quora question about the most important research papers which all NLP students “should definitely read”.
Get started with WebAssembly through this simple hands-on tutorial that assumes only general knowledge in web development. The only tools you’ll need to get a taste of Wasm through runnable code examples are a code editor, any modern browser, and a Docker container with toolchains for C and Rust that comes with the article.
This book was created by WebRTC implementers to share their hard-earned knowledge with the world. WebRTC for the curious is an Open Source book written for those that are always looking for more. This book doesn’t settle for abstraction.
This book is all about protocols and APIs, and will not be talking about any software in particular. We attempt to summarize RFCs and get all undocumented knowledge into one place. This is book is not a tutorial, and will not contain much code.
This is very much a WIP, but there’s a fair bit ready for consumption and the authors are actively collaborating in the GitHub repo.
Learn the good parts of Vim.
This book from Igor Irianto is in progress with 11 of 20 chapters are ready to read as of right now.
If you develop for the web, this article might be too elementary for you. But it’s a great reference for curious friends/family who aren’t familiar with things like TCP, TLS, MAC addresses, etc.
(It’s also a nice refresher if you’ve been chilling solely at the application layer for awhile.)
Shubheksha Jalan (whom you may recall from Go Time #142) shares some hard-won wisdom after 3 years in software engineering, such as:
- Titles do matter, even if they’d like you to believe that they don’t
- Sponsors are like cheat codes in the career game
- Programming gets easier over time
She explains those plus a few more.
Code review is critical to being a software engineer yet there aren’t many resources on how to build up the skill. That’s why Shubheksha wrote what she learned when she first started making the mental shift from writing code to reviewing it.
Remember to be kind and empathetic — Code reviews are very ripe for misunderstanding and lack of empathy on either side. At the heart of code reviews is collaboration. It is as important to remind yourself as a reviewer that you’re reviewing someone’s code and not passing judgments on them as a person and it is equally important to remember that whatever your reviewer tells you is not meant as a personal attack.
Musicians and developers go together like peas and carrots, Jenny. So it makes sense that techniques used by musicians to hone their skills might transfer over to software people. One of those techniques is the “masterclass”
A masterclass is a format in which musicians perform a work for an established artist and the artist then gives them feedback rather like a lesson, except that all of this happens in front of an audience.
Click through for a compelling distillation of what software teams can learn from musicians when it comes to giving and receiving feedback.
Developers encounter technical writing everywhere: product & API docs, manpages, tutorials & more. We know it matters but what is technical writing exactly? And how does it differ from other writing?
In this brief post, I define what technical writing is, provide examples of technical writing in software and beyond, and explore other skills technical writers must develop to create successful and effective documentation.
These iconic, low-resolution designs are the perfect tool to learn the basics of physical interface design. Armed with 52 different bricks, let’s see what they can teach us about the design, layout and organisation of complex interfaces.
Nikola Đuza makes a compelling case for the powerful text editor that developers love (or love to hate):
What Vim is excellent at is navigating, making some changes, and repeating the process. The process most call editing (not to be confused with writing). Most developers tend to overlook this fact, but this is one of the strong selling points of Vim. Developers are more prone to reading code, jumping from file to file, making small incisions in the code, and writing code all the time.
Jordan Lewis shared his end-to-end setup to run a live coding stream. He covers all the things — OBS configuration, stream alerts, channel setup, chatbot, becoming a Twitch affiliate…
If you’re reading this post, you might be interested in trying your hand at live coding on stream, as a way of sharing your projects in a more relatable, immediate way than a polished blog post, teaching others about programming, or just as a way to have fun. I think that live coding and streams in general are an interesting possible future form of both education and entertainment, and if you’re contemplating starting your own stream, I sincerely hope that you do it.
Your first week with a new programming language can be tricky. In this episode Jon is joined by Jacquie and DaShaun to talk about their first week with Go. What was their primary focus? What resources did they leverage? What made it stick, and what didn’t?
Here’s what worked for Vlad Mihalcea…
I started a blog first. This allows you to practice your writing and build an audience.
I self-published my book because publishers only wanted to give me just 10% from the profit. I used Leanpub to write and sell the book while I was still writing it and Teachable to sell it when it was done. Leanpub gives you 80% royalties. Teachable gives you around 95%.
Check his Twitter thread for the other twelve (12) things he did to make money with his book idea.
When Shesh kicked off this series he said, “I find it easier to understand something new if it was explained in terms of something I already know. I thought there might be others like me.”
BTW, here are links to the others from this series: