This Week In Security: HaveIBeenPwned And Facebook Attack Their Customers

We’re fans of haveibeenpwned.com around here, but a weird story came across my proverbial desk this week — [Troy Hunt] wrote a malicious SQL injection into one of their emails! That attack string was a simple ';--

Wait, doesn’t that look familiar? You remember the header on the haveibeenpwned web page? Yeah, it’s ';--have i been pwned?. It’s a clever in-joke about SQL injection that’s part of the company’s brand. An automated announcement was sent out to a company that happened to use the GLPI service desk software. That company, which shall not be named for reasons that are about to become obvious, was running a slightly out-of-date install of GLPI. That email generated an automated support ticket, which started out with the magic collection of symbols. When a tech self-assigned the ticket, the SQL injection bug was triggered, and their entire ticket database was wiped out. The story ends happily, thanks to a good backup, and the company learned a valuable lesson. Continue reading “This Week In Security: HaveIBeenPwned And Facebook Attack Their Customers”

Inputs Of Interest: Curves Are The Key To My Type

While I may have fallen in love aesthetically with the ErgoDox I built, beauty is only skin deep. And that’s funny, because you can see right through it. But the thing is, it’s just too big and knife-edged to be my daily driver. I keep missing the space bar and thumb-thumping the acrylic wasteland between the thumb cluster and the mainland.

The point was to make a nice portable keeb, even though all my trips for he foreseeable future are going to be limited to the bed or the couch. But it has to be comfortable, and the ErgoDox in its present state simply is not long-term comfortable. I’d take it over a rectangle any day, but it would probably end up being a half day.

Ergo isn’t so much a preference for me as it is a necessity at this point. I feel like I can honestly say that I might not be typing these words to you now if it weren’t for the Kinesis. I don’t want my fingers to do unnecessary legwork, or downgrade from the quality of typing life that concave keys have afforded me. So let me just say that using the ErgoDox made me want to build a dactyl even more than before.

Continue reading “Inputs Of Interest: Curves Are The Key To My Type”

Ask Hackaday: Are 80 Characters Per Line Still Reasonable In 2020?

Software developers won’t ever run out of subjects to argue and fight about. Some of them can be fundamental to a project — like choice of language or the programming paradigm to begin with. Others seem more of a personal preference at first, but can end up equally fundamental on a bigger scale — like which character to choose for indentation, where to place the curly braces, or how to handle line breaks. Latest when there’s more than one developer collaborating, it’s time to find a common agreement in form of a coding style guide, which might of course require a bit of compromise.

Regardless of taste, the worst decision is having no decision, and even if you don’t agree with a specific detail, it’s usually best to make peace with it for the benefit of uniformly formatted code. In a professional environment, a style guide was ideally worked out collaboratively inside or between teams, and input and opinions of everyone involved were taken into consideration — and if your company doesn’t have one to begin with, the best step to take is probably one towards the exit.

The situation can get a bit more complex in open source projects though, depending on the structure and size of a project. If no official style guide exists, the graceful thing to do is to simply adopt the code base’s current style when contributing to it. But larger projects that are accustomed to a multitude of random contributors will typically have one defined, which was either worked out by the core developers, or declared by its benevolent dictator for life.

In case of the Linux kernel, that’s of course [Linus Torvalds], who has recently shaken up the community with a mailing list response declaring an overly common, often even unwritten rule of code formatting as essentially obsolete: the 80-character line limitation. Considering the notoriety of his rants and crudeness, his response, which was initiated by a line break change in the submitted patch, seems downright diplomatic this time.

[Linus]’ reasoning against a continuing enforcement of 80-char line limits is primarly the fact that screens are simply big enough today to comfortably fit longer lines, even with multiple terminals (or windows) next to each other. As he puts it, the only reason to stick to the limitation is using an actual VT100, which won’t serve much use in kernel development anyway.

Allowing longer lines on the other hand would encourage the use of more verbose variable names and whitespace, which in turn would actually increase readability. Of course, all to a certain extent, and [Linus] obviously doesn’t call for abolishing line breaks altogether. But he has a point; does it really make sense to stick to a decades old, nowadays rather arbitrary-seeming limitation in 2020?

Continue reading “Ask Hackaday: Are 80 Characters Per Line Still Reasonable In 2020?”

Surviving The Pandemic As A Hacker: Take Care Of Your Mental Health

As we’ve looked at the subject of face masks in the first two parts of this series, our emphasis has been on a physical step to aid your chances of making it through the COVID-19 pandemic in one piece. But given that the upheaval caused by all the social changes enacted to protect the population are likely to leave an indelible mark on those who live through them, there are significant aspects of surviving all this that go beyond the physical.

This will be a once-in-a-lifetime event for many people, a significant number will find it traumatic in some way, and for many of those people there will be an immediate and then ongoing effect on mental health. If anyone is in doubt as to from what position this is coming, I count myself among that number.

The Pressure Of A Once In A Lifetime Event

Piccadilly Circus, London, during the COVID-19 lockdown. Normally this is packed.
Piccadilly Circus, London, during the COVID-19 lockdown. Normally this is packed. Kwh1050 / CC BY-SA 4.0

Different countries have placed their own public health restrictions on their populations, but it’s likely that many of you are in some form of lockdown situation, with social or communal  activities and locations closed or curtailed, going out restricted, and with all around you in the same situation. A perfect storm of having social outlets removed while simultaneously being stuck at home perhaps with family or housemates you’d prefer not to spend too much time with is not ideal. Add to that the multiple stresses from the pandemic itself as well as other news stories from our turbulent world, and it’s hardly a surprising that it’s taking a toll. Continue reading “Surviving The Pandemic As A Hacker: Take Care Of Your Mental Health”

Fail Of The Week: How Not To Watercool A PC

To those who choose to overclock their PCs, it’s often a “no expense spared” deal. Fancy heat sinks, complicated liquid cooling setups, and cool clear cases to show off all the expensive guts are all part of the charm. But not everyone’s pockets are deep enough for off-the-shelf parts, so experimentation with cheaper, alternatives, like using an automotive fuel pump to move the cooling liquid, seems like a good idea. In practice — not so much.

The first thing we thought of when we saw the title of [BoltzBrain]’s video was a long-ago warning from a mechanic to never run out of gas in a fuel-injected car. It turns out that the gasoline acts as a coolant and lubricant for the electric pump, and running the tank dry with the power still applied to the pump quickly burns it out. So while [BoltzBrain] expected to see corrosion on the brushes from his use of water as a working fluid, we expected to see seized bearings as the root cause failure. Looks like we were wrong: at about the 6:30 mark, you can see clear signs of corrosion on the copper wires connecting to the brushes. It almost looks like the Dremel tool cut the wire, but that green copper oxide is the giveaway. We suspect the bearings aren’t in great shape, either, but that’s probably secondary to the wires corroding.

Whatever the root cause, it’s an interesting tour inside a common part, and the level of engineering needed to build a brushed motor that runs bathed in a highly flammable fluid is pretty impressive. We liked the axial arrangement of the brushes and commutator especially. We wonder if fuel pumps could still serve as a PC cooler — perhaps changing to a dielectric fluid would do the trick.

Continue reading “Fail Of The Week: How Not To Watercool A PC”

Hackaday Prize: Cal-Earth Is Digging Deep To Shelter Those In Need

For the average person, a government order to shelter in place or stay at home comes with some adjustments. Many changes are cerebral: we navigate vast expanses of togetherness with our families while figuring out how to balance work, life, and newfound teaching roles. Other changes are physical, like giving each other enough space to be successful. A lucky few can say that not much has changed for them personally. No matter what your position is in this thing, if you have a place to shelter, you’re doing better than 20% of the world’s population.

CalEarth founder Nader Khalili leads from the top of a dome in progress.

An estimated 1.6 billion people, including those who are homeless and those who are refugees, are living without adequate shelter. The need for shelter is a cornerstone of human well-being, and yet building a home for oneself can seem totally out of reach. After all, most people aren’t qualified to build a habitable structure without an architect, an engineer or two, and a team of construction workers with heavy equipment. Or are they?

It all depends on the design and materials. Dome structures have been around for centuries, and the idea of using packed earth to build walls is a tried and true concept. Architect Nader Khalili perfected a blend of the two concepts with his SuperAdobe construction system, which employs long sandbags filled with moistened earth. Khalili opened the California Institute of Earth Architecture (CalEarth) in 1991 to explore the possibilities of SuperAdobe and to educate others in the building process.

I grew up among the poor. I am one of nine children, and constantly knew need. I never forgot, so now I’m responding.    — Nader Khalili

This year, the Hackaday Prize is teaming up with CalEarth to push their widely accessible concept of sustainable living into the future. As with our other three non-profits, this effort is twofold. The open call challenge invites you to design sustainable add-ons for SuperAdobe homes that expand their livability and are simple to build and use. Throughout June and July, our CalEarth Dream Team members are working to find ways to automate the process so that these homes can be built much faster, and in turn help more people.

Continue reading “Hackaday Prize: Cal-Earth Is Digging Deep To Shelter Those In Need”

Why You (Probably) Won’t Be Building A Replica Amiga Anytime Soon

Early in 2019, it  became apparent that the retro-industrial complex had reached new highs of innovation and productivity. It was now possible to create entirely new Commdore 64s from scratch, thanks to the combined efforts of a series of disparate projects. It seems as if the best selling computer of all time may indeed live forever.

Naturally, this raises questions as to the C64’s proud successor, the Amiga. Due to a variety of reasons, it’s less likely we’ll see scratch-build Amiga 500s popping out of the woodwork anytime soon. Let’s look at what it would take, and maybe, just maybe, in a few years you’ll be firing up Lotus II (or, ideally, Jaguar XJ220: The Game) on your brand new rig running Workbench 1.3. Continue reading “Why You (Probably) Won’t Be Building A Replica Amiga Anytime Soon”