Author with book

Learn All About Writing A Published Technical Book, From Idea To Print

Ever wondered what, exactly, goes into creating a technical book? If you’d like to know the steps that bring a book from idea to publication, [Sara Robinson] tells all about it as she explains what went into co-authoring O’Reilly’s Machine Learning Design Patterns.

Her post was written in 2020, but don’t let that worry you, because her writeup isn’t about the book itself so much as it is about the whole book-writing process, and her experiences in going through it. (By the way, every O’Reilly book has a distinctive animal on the cover, and we learned from [Sara] that choosing the cover animal is a slightly mysterious process, and is not done by the authors.)

It turns out that there are quite a few steps that need to happen — like proposals and approvals — before the real writing even starts. The book writing itself is a process, and like most processes to which one is new, things start out slow and inefficient before they improve.

[Sara] also talks a bit about burnout, and her advice on dealing with it is as insightful as it is practical: begin by communicating honestly how you are feeling to the people involved.

Over the years I’ve learned that people will very rarely guess how you’re feeling and it’s almost always better to tell them […] I decided to tell my co-authors and my manager that I was burnt out. This went better than expected.

There is a lot of code in the book, and it has its own associated GitHub repository should you wish to check some of it out.

By the way, [Sara] celebrated publication by making a custom cake, which you can see near the bottom of her blog post. This comes as no surprise seeing as she has previously managed to combine machine learning with her love of making cakes!

The Anxiety Of Open Source: Why We Struggle With Putting It Out There

You’ve just finished your project. Well, not finished, but it works and you’ve solved all the problems worth solving, and you have a thing that works for you. Then you think about sharing your creation with the world. “This is cool” you think. “Other people might think it’s cool, too.” So you have to take pictures and video, and you wish you had documented some more of the assembly steps, and you have to do a writeup, and comment your code, and create a repository for it, maybe think about licensing. All of a sudden, the actual project was only the beginning, and now you’re stressing out about all the other things involved in telling other people about your project, because you know from past experience that there are a lot of haters out there who are going to tear it down unless it’s perfect, or even if it is, and even if people like it they are going to ask you for help or to make one for them, and now it’s 7 years later and people are STILL asking you for the source code for some quick little thing you did and threw up on YouTube when you were just out of college, and of course it won’t work anymore because that was on Windows XP when people still used Java.

Take a deep breath. We’ve all been there. This is an article about finding a good solution to sharing your work without dealing with the hassle. If you read the previous paragraph and finished with a heart rate twice what you started, you know the problem. You just want to share something with the world, but you don’t want to support that project for the rest of your life; you want to move on to new and better and more interesting projects. Here are some tips.

Continue reading “The Anxiety Of Open Source: Why We Struggle With Putting It Out There”

A Neural Network Can Now Be Your Writing Assistant

Writing is a difficult job; though, as a primarily word-based site, we may be a little biased here at Hackaday. Not only does a writer have to know the basics, like what a semicolon is and when to use one, they also need to build sentences that convey information in a manner that is pleasant to read. As many commenters like to point out, even we struggle with this on occasion (lauded and scholarly as we are).

Wouldn’t it be better if we could let our computers do the heavy lifting for us? After all, a monkey with infinite time will eventually write Shakespeare and all that. Surely, a computer can be programmed to do all that fancy word assembly while we sit back and enjoy some coffee. Well, that’s what [Robin Sloan] set out to do with a recurrent neural network-powered writing assistant.

Alright, so it doesn’t actually write completely on its own. Instead, [Robin’s] software takes advantage of [JC Johnson’s] torch-rnn project, and integrates it into Atom to autocomplete sentences. [Robin] trained his neural network on hundreds of old issues of the sci-fi magazines Galaxy and IF Magazine, which are available at the Internet Archive. Once the server and corresponding Atom package are installed, a writer can simply push the Tab key and the sentence will be completed.

The results are interesting. [Robin] himself says “it’s like writing with a deranged but very well-read parrot on your shoulder.” While it’s not likely to be used as a serious writing tool anytime soon, the potential is certainly intriguing. When trained on relevant source material, the integration into software like Atom could be very useful. If a neural network can compose music, surely it can write some silly tech articles.

[thanks to Tim Trzepacz for the tip!]

Typewriter image: LjL (Public domain).

Writing with a 3D printer

Good Penmanship With A 3D Printer

[Chris Mitchell] was going to make his own plotter for doing cursive writing for cards but realized he might be able to use his 3D printer to do the writing instead. But then he couldn’t find any suitable software so he did what you’re supposed to do in this situation, he wrote his own called 3DWriter. He even 3D printed a holder so he could attach a pen to the side of the extruder. When not in use as a plotter he simply retracts the pen tip.

The software is written in C# for Windows and is available on GitHub along with a detailed write-up. He clearly put a lot of thought into what features the software offers. After selecting the font, you type in whatever you want printed and then preview it to make sure it looks good. There’s also a bunch of G-Code settings you can fill in such as bed size, the horizontal and vertical offsets of the pen tip from the extruder tip, drawing speed and so on. There’s even an option to do a dry run with the pen raised so you can make sure it’ll draw on the bed where you expect it to.

The code itself is quite clean and easy to understand. If you’re curious like we were at what information is in the font files and how it’s translated into G-Code then download the source from the GitHub page and have a look. [Chris] settled on a font set called Hershey fonts since they’re primarily stroke based fonts as opposed to outline fonts which are what other programs he’d looked at used.

This makes us think of all those 3D printers with busted extruders we’ve seen collecting dust on hackerspace shelves or simply ones considered obsolete. Using them as a plotter gives them new life — even if just as a fun way to learn about writing code for CNC machines. It makes us wonder what other 2D uses they can be put to… cutting vinyl? laser printing? Ideas anyone?

In any case, have a look at the video below to see it in action as a 2D plotter. As a bonus, you’ll also see line art it drew using an Inkscape plugin.

Continue reading “Good Penmanship With A 3D Printer”

A Robot’s Favourite Pen

A test of various pens using a robot

Some people are very picky about their pens. Entire forums exist to discuss the topic of pen superiority. However, it comes down to a personal choice. Some people like gel while others prefer ballpoint.

[Jens] built a drawing robot that produces drawings like the one seen here. It uses several linkages connected to two stepper motors, which give fine control over the pen. With the robot working [Jens] set out to find the best pen for robotic drawing.

Seven pens were tested on the machine, each drawing the same pattern. [Jens] found that gel and rollerball pens work the best on the robot, and started examining the performance of each.

The pens all performed differently, but two winners were chosen to use in the machine. The Pentel Energel Deluxe RTX and the Pilot G-2 07 beat out the competition since they maintained good lines at high speeds.

If you’re looking to build a drawing robot, [Jens]’ research should help you pick the best pen for your application. For inspiration, a video of the robot in action is waiting after the break.

Continue reading “A Robot’s Favourite Pen”

Hola! From A Spanish Speaking Drawing Arm

[Acorv] wrote in to tell us about his latest hack, a robotic arm that writes with a marker. In the video after the break, the arm is set to copy whatever someone writes in a touchpad. As you might guess from this video, the hack is written up in Spanish, but it’s nothing your favorite translator can’t handle if you don’t speak the language.

This robot it the result of improvements on his first drawing arm ‘bot featured here. The basic kinematics stayed the same in the arm’s second iteration, but the resolution was greatly improved by using belts to achieve a gear reduction. The second build also features mechanical reinforcement with an Erector-set style building set known as [Mekanex].

A simple hobby servo moves the marker up or down, and control is achieved through, you guessed it, an Arduino with a motor shield! Although from a different time, the way this arm is used is reminiscent of a mechanical writing automaton from long ago. Continue reading “Hola! From A Spanish Speaking Drawing Arm”