Frances Allen Optimised Your Code Without You Even Knowing

In 2020, our digital world and the software we use to create it are a towering structure, built upon countless layers of abstraction and building blocks — just think about all the translations and interactions that occur from loading a webpage. Whilst abstraction is undoubtedly a great thing, it only works if we’re building on solid ground; if the lower levels are stable and fast. What does that mean in practice? It means low-level, compiled languages, which can be heavily optimised and leveraged to make the most of computer hardware. One of the giants in this area was Frances Allen, who recently passed away in early August. Described by IBM as “a pioneer in compiler organization and optimization algorithms,” she made numerous significant contributions to the field. Continue reading “Frances Allen Optimised Your Code Without You Even Knowing”

Linux-Fu: Your Own Dynamic DNS

It is a problem as old as the Internet. You want to access your computer remotely, but it is behind a router that randomly gets different IP addresses. Or maybe it is your laptop and it winds up in different locations with, again, different IP addresses. There are many ways to solve this problem and some of them are better than others.

A lot of routers can report their IP address to a dynamic DNS server. That used to be great, but now it seems like many of them hound you to upgrade or constantly renew so you can see their ads. Some of them disappear, too. If your router vendor supplies one, that might be a good choice, until you change routers, of course. OpenWRT supports many such services and there are many lists of common services.

However, if you have a single public accessible computer, for example a Web server or even a cloud instance, and you are running your own DNS server, you really don’t need one of those services. I’m going to show you how I do it with an accessible Linux server running Bind. This is a common setup, but if you have a different system you might have to adapt a bit.

There are many ways to set up dynamic DNS if you are willing to have a great deal of structure on both sides. Most of these depend on setting up a secret key to allow for DNS updates and some sort of script that calls nsupdate or having the DHCP server do it. The problem is, I have a lot of client computers and many are set up differently. I wanted a system where the only thing needed on the client side was ssh. All the infrastructure remains on the DNS server.

Continue reading “Linux-Fu: Your Own Dynamic DNS”

Running A Successful Hacker Camp In A Pandemic: BornHack 2020

You could say 2020 is The Year That Didn’t Happen, or perhaps even The Year That Everything Happened Online. All the international cons and camps have been cancelled, and we’ve spent our time instead seeing our friends in Jitsi, or Zoom.

But there was one camp that wasn’t cancelled. The yearly Danish hacker camp BornHack has gone ahead this year with significantly reduced numbers and amid social distancing, turning it from what is normally one of the smaller and more intimate events into the only real-world event of 2020.

I bought my ticket early in the year and long before COVID-19 became a global pandemic, so on a sunny day in August I found myself in my car with my friend Dani from FizzPop hackerspace in Birmingham taking the ferry for the long drive through the Netherlands and Germany to Denmark.

Continue reading “Running A Successful Hacker Camp In A Pandemic: BornHack 2020”

Damage To Arecibo Leaves Gaping Hole In Astronomy

In the early morning hours of August 10th, a support cable at the Arecibo Observatory pulled lose from its mount and crashed through the face of the primary reflector below. Images taken from below the iconic 305 meter dish, made famous by films such as Contact and GoldenEye, show an incredible amount of damage. The section of thick cable, estimated to weigh in at around 6,000 kilograms (13,000 pounds), had little difficulty tearing through the reflector’s thin mesh construction.

Worse still, the cable also struck the so-called “Gregorian dome”, the structure suspended over the dish where the sensitive instruments are mounted. At the time of this writing it’s still unclear as to whether or not any of that instrumentation has been damaged, though NASA at least has said that the equipment they operate inside the dome appears to have survived unscathed. At the very least, the damage to the dome structure itself will need to be addressed before the Observatory can resume normal operations.

The Arecibo Observatory by JidoBG [CC-BY-SA 4.0]
But how long will the repairs take, and who’s going to pay for them? It’s no secret that funding for the 60 year old telescope has been difficult to come by since at least the early 2000s. The cost of repairing the relatively minor damage to the telescope sustained during Hurricane Maria in 2017 may have been enough to shutter the installation permanently if it hadn’t been for a consortium led by the University of Central Florida. They agreed to share the burden of operating the Observatory with the National Science Foundation and put up several million dollars of additional funding.

It’s far too early to know how much time and money it will take to get Arecibo Observatory back up to operational status, but with the current world situation, it seems likely the telescope will be out of commission for at least the rest of the year. Given the fact that repairs from the 2017 damage still haven’t been completed, perhaps even longer than that. In the meantime, astronomers around the globe are left without this wholly unique resource.

Continue reading “Damage To Arecibo Leaves Gaping Hole In Astronomy”

Microsoft Flight Simulator’s Data Insanity Spawns Enormous Buildings And Anomalies From OpenStreetMap

The OpenStreetMap project is an excellent example of how powerful crowdsourced data can be, but that’s not to say the system is perfect. Invalid data, added intentionally or otherwise, can sometimes slip through the cracks and lead to some interesting problems. A fact that developers Asobo Studio are becoming keenly aware of as players explore their recently released Microsoft Flight Simulator 2020.

Like a Wiki, users can update OpenStreetMap and about a year ago, user nathanwright120 marked a 2 story building near Melbourne, Australia as having an incredible 212 floors (we think it’s this commit). The rest of his edits seem legitimate enough, so it’s a safe bet that it was simply a typo made in haste. The sort of thing that could happen to anyone. Not long after, thanks to the beauty of open source, another user picked up on the error and got it fixed up.

But not before some script written by Asobo Studio went through sucked up the OpenStreetMap data for Australia and implemented it into their virtual recreation of the planet. The result is that the hotly anticipated flight simulator now features a majestic structure in the Melbourne skyline that rises far above…everything.

The whole thing is great fun, and honestly, players probably wouldn’t even mind if it got left in as a Easter egg. It’s certainly providing them with some free publicity; in the video below you can see a player by the name of Conor O’Kane land his aircraft on the dizzying edifice, a feat which has earned him nearly 100,000 views in just a few days.

But it does have us thinking about filtering crowdsourced data. If you ask random people to, say, identify flying saucers in NASA footage, how do you filter that? You probably don’t want to take one person’s input as authoritative. What about 10 people? Or a hundred?

Continue reading “Microsoft Flight Simulator’s Data Insanity Spawns Enormous Buildings And Anomalies From OpenStreetMap”

ESP32 Altair Emulator Gets Split Personality

If you wanted me to demo CP/M running on an emulated Altair 8800, I’d pull out a tiny board from my pocket. You might wonder how I wound up with an Altair 8800 that runs CP/M (even WordStar), that fits in your pocket and cost less than $10. Turns out it’s a story that goes back to 1975.

When the Altair 8800 arrived back in 1975, I wanted one. Badly. I’d been reading about computers but had no hands-on experience. But back then, as far as I was concerned, the $400 price tag might as well have been a million bucks. I was working for no real pay in my family’s store, though in all fairness, adjusted into today’s money that was about $2,000.

I’d love to buy one now, but a real Altair costs even more today than it did back then. They also take up a lot of desk space. Sure, there are replicas and I’ve had a few. I even helped work the kinks out of Vince Briel’s clone which I’ve enjoyed. However, the Briel computer has two problems. First, it takes a little work to drive a serial port (it uses a VGA and a PS/2 keyboard). Second, while it’s smaller than a real Altair, it is still pretty large — a byproduct of its beautiful front panel.

So to quickly show off CP/M to someone, you need to haul out a big box and find a VGA monitor and PS/2 keyboard — both of which are becoming vanishing commodities. I made some modifications to get the serial port working, but it is still a lot to cart around. You could go the software route with a simulator like SIMH or Z80pack, but now instead of finding a VGA monitor and a PS/2 keyboard, you need to find a computer where you can install the software. What I really wanted was a simple and portable device that could boot CP/M.

Continue reading “ESP32 Altair Emulator Gets Split Personality”

How To Get Into Cars: Aero Mods For More Grip

In 1960, Enzo Ferrari said “Aerodynamics are for people who can’t build engines”. It’s a quote that’s been proven laughably wrong in decades since. Aerodynamics are a key consideration for anyone serious about performance in almost any branch of motorsport. Today, we’ll take a look at how aero influences the performance of your car, and what modifications you might undertake to improve things.

Gains To Be Had

Improving the aerodynamics of your vehicle can mean wildly different things, depending on what your end goal is. Aerodynamics affects everything from top speed, to fuel economy, to grip, and optimizing for these different attributes can take wildly different routes. Often, it’s necessary to find a balance between several competing factors, as improvements in one area can often be detrimental in another.

To understand aerodynamics with regards to cars, we need to know about the forces of lift (or downforce), and drag. Drag is the force that acts against the direction of motion, slowing a vehicle down. Lift is the force generated perpendicular to the direction of motion. In the context of flight, the lift force is generated upwards with respect to gravity, lofting planes into the air. In an automotive context, we very much prefer to stay on the ground. Wings and aerodynamic surfaces on cars are created to create lift in the opposite direction, pushing the vehicle downwards and creating more grip. We refer to this “downwards lift” as downforce.

Continue reading “How To Get Into Cars: Aero Mods For More Grip”