This Week In Security: Lastpass Takeaway, Bitcoin Loss, And PyTorch

We mentioned the LastPass story in closing a couple weeks ago, but details were still a bit scarce. The hope was that LastPass would release more transparent information about what happened, and how many accounts were accessed. Unfortunately it looks like the December 22nd news release is all we’re going to get. For LastPass users, it’s time to make some decisions.

To recap, an attacker used information from the August 2022 breach to target a LastPass Employee with a social engineering ploy. This succeeded, and the attacker managed to access LastPass backups, specifically a customer account database and customer vaults. There has been no official word of how many users’ data were included, but the indication is that it was the entire dataset. And to make matters worse, the encrypted vault is only partially encrypted. Saved URLs were exposed as plain-text to the attacker, though usernames and passwords are still encrypted using your master password.

So what should a LastPass user do now? It depends. We can assume that whoever has the LastPass vault data is currently throwing every password list available at it. If you used a weak password — derived from words in any language or previously compromised — then it’s time to change all of your passwords that were in the vault. They are burned. Continue reading “This Week In Security: Lastpass Takeaway, Bitcoin Loss, And PyTorch”

Hackaday Podcast 200: Happy New Year, The Ultimate Game Boy, And Python All The Things

This week, Editor-in-Chief Elliot Williams and Managing Editor Tom Nardi ring in the New Year with…well, pretty much the same stuff they do every other week. After taking some time to talk about the nuts and bolts of the podcast in honor of Episode 200, discussion moves on to favorite stories of the week including an impeccably cloned Dyson lamp, one hacker’s years-long quest to build the ultimate Game Boy, developing hardware in Python, building a breadboard computer with the 6502’s simplified sibling, and the latest developments surrounding the NABU set-top box turned retrocomputer. The episode wraps up with a review of some of the biggest themes we saw in 2022, and how they’re likely to shape the tech world in the coming years.

Check out the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Download it in living MP3.

Continue reading “Hackaday Podcast 200: Happy New Year, The Ultimate Game Boy, And Python All The Things”

Retrotechtacular: Critical Code Reading, 70s Style

Anyone who has ever made a living writing code has probably had some version of the following drilled into their head: “Always write your code so the next person can understand it.” Every single coder has then gone on to do exactly the opposite, using cryptic variables and bizarre structures that nobody else could possibly follow. And every single coder has also forgotten the next part of that saying — “Because the next person could be you” — and gone on to curse out an often anonymous predecessor when equally inscrutable code is thrust upon them to maintain. Cognitive dissonance be damned!

It’s a tale as old as time, or at least as old as programming has existed as a profession. And by 1975, poorly written code was enough of a problem that an outfit called Edutronics put together the animated gem Critical Program Reading: Structuring an Unstructured Program. It’s apparently Part 1 of a larger series on structured programming techniques, and comes to us by way of [Alec Watson], host of Technology Connections on YouTube, by way of his second channel, the delightfully named Technology Connextras.

The film’s three minimally animated characters, each of whom could have been the villain in an episode of Scooby Doo, are tasked by a stern-sounding narrator to analyze a fragment of pseudocode that’s written in a concoction of COBOL, PL/1, and a bunch of other languages. The code is a hot mess, but our heroes muddle through it line by awful line, making it more readable by guessing at more descriptive variable names, adding structured elements, and making logical changes to improve the program’s flow. The example code is highly contrived, to be sure, but the business logic becomes much clearer as our team refactors the code and makes it far more approachable.

For as much as languages have changed since the 1970s, and with all the progress we’ve made in software engineering, the lessons presented in this film are still surprisingly relevant. We loved a lot of the little nuggets dropped along the way, like “Consistency aids understanding,” and “Use symbols in a natural way.” But we will take exception with the statement “Wrong means poor structure” — we’ve written seen plenty of properly structured code that didn’t work worth a damn. We also enjoyed the attempt at socially engineering a less toxic work environment: “Use tact in personal criticisms.” If only they could learn that lesson over at Stack Overflow.

It’s not clear where [Alec] found this 16-mm film — we’d sure like to hear that story — but it’s a beauty and we’re glad he took the time to digitize it. We’re consistently amazed at his ability to make even the most mundane aspects of technology endlessly fascinating, and while this film may be a bit off from his normal fare, it’s still a great find. Continue reading “Retrotechtacular: Critical Code Reading, 70s Style”

The Dawn Of Synthetic Milk: When Milk Becomes More Like Beer

What would we do without milk in modern day society? Although lactation originally evolved as a way to provide a newborn mammal with nutrients and the other essentials during the first weeks of their life, milk has for thousands of years now been a staple food in human cultures. Whether from cows, camels, sheep or other mammals, each year humans consume many liters of this mythical substance, with our galaxy’s name – the Milky Way –  coming courtesy of Greek mythology and a spilled milk incident.

A major issue with mammalian milk, however, is that it is only produced by females for a certain time after giving birth, which requires for example a dairy cow to constantly go through pregnancies, which is both cumbersome and not very animal-friendly. Simultaneously, the newborn offspring cannot drink this milk, but must be provided with an alternative. For these reasons synthetic milk is becoming an increasingly more popular animal- and environmentally-friendly alternative.

For years now, companies such as US-based Perfect Day are producing milk that’s for all intents and purposes identical to cow milk, with the added advantage of being free of lactose and other problematic additions. The best part of this all? It’s all done with existing fermentation techniques.

Continue reading “The Dawn Of Synthetic Milk: When Milk Becomes More Like Beer”

Something’s Rotating In The State Of Denmark: A Clock

If you visit the Copenhagen City Hall, you’ll see an ornate mechanical clock. By itself, this is unremarkable, of course. There are plenty of ornate clocks in city halls around the world, but this one has a fascinating backstory that starts with a locksmith named Jan Jens Olsen. Unfortunately, Jens didn’t actually complete the clock before his death. It would take 12 years to put together the 15,448 individual parts. However, he did manage to see most of the clock that he had been designing for 50 years put together.

Jens was 60 when he started constructing the clock, but the story starts when he was only 25. In Strasbourg, the young locksmith saw an astronomical clock with a perpetual calendar in a cathedral. He was fascinated and returned several times to study the mechanism. Around the age of 30, Jens had moved to watchmaking and had a keen interest in astronomy — he was a founding member of the Danish Astronomical Society. Perhaps it was the combination of these two interests that made it inevitable that he would want to build a precise astronomically-correct clock.

Continue reading “Something’s Rotating In The State Of Denmark: A Clock”

The Problem With Passwords

By now it’s probable that most readers will have heard about LastPass’s “Security Incident“, in which users’ password vaults were lifted from their servers. We’re told that the vaults are encrypted such that they’re of little use to anyone without futuristic computing power and a lot of time, but the damage is still done and I for one am glad that I wasn’t a subscriber to their service. But perhaps the debacle serves a very good purpose for all of us, in that it affords a much-needed opportunity for a look at the way we do passwords. Continue reading “The Problem With Passwords”

In Praise Of “Just Because” Hacks

Sometimes you pick a project because the world needs it to be done. Or maybe you or a friend need it. Or maybe you don’t really need it, but it fulfills a longstanding dream. In my mind, the last stop before you reach “why am I doing this” is the “just because” hack.

The ideal “just because” hack is limited in scope. You don’t want to spend years on a whimsical project, and because of this a “just because” hack isn’t usually motivating enough to keep you going that long anyway, except for the tenacious few. A “just because” doesn’t necessarily have to be an easy win, but it makes sense for you to see your way out before you get in too deep.

I’m not sure if it’s the Baader-Meinhof phenomenon or not, but in the last week or so in the Hackaday universe, a lot of people have been singing the praises of “just because” hacks. (Check out this one discussion, for instance.) Mostly, it’s a combination of them turning out better than initially thought, or it’s about the learning that came along for the ride. Of course, many of them spin off into longer, serious projects even if they didn’t start that way.

Not everything in life can be frivolous, of course. But that makes the “just because” hack that much sweeter, and you should try to make mental room for them if you can. When the stakes are low, creativity can be high. You might still want to impose a deadline, lest you fall into eternal yak shaving, but take it easy. You don’t need a justification all the time: the journey can be the destination.