Peeking Inside Executables And Libraries To Make Debugging Easier

At first glance, both the executables that a compiler produces, and the libraries that are used during the building process seem like they’re not very accessible. They are these black boxes that make an application go, or make the linker happy when you hand it the ‘right’ library file. There is also a lot to be said for not digging too deeply into either, as normally things will Just Work™ without having to bother with such additional details.

The thing is that both executables and libraries contain a lot of information that normally is just used by the OS, toolchain, debuggers and similar tools. Whether these files are in Windows PE format, old-school Linux a.out or modern-day .elf, when things go south during development, sometimes one has to break out the right tools to inspect them in order to make sense of what is happening.

This article will focus primarily on the Linux platform, though most of it also applies to BSD and MacOS, and to some extent Windows.

Continue reading “Peeking Inside Executables And Libraries To Make Debugging Easier”

To Deal With Plastic Trash, All You Need Is Bugs

Outlawed now in some places, or only available to tote your purchases at a ridiculous premium, the billions of “T-shirt” bags used every year present a serious waste management problem. Whether blowing across the landscape like synthetic tumbleweeds, floating in the ocean as ersatz jellyfish, or clogging up municipal waste streams, finding a way to deal with them could really make a difference. And finding a bug that eats polyethylene and poops antifreeze might be a great first step in bioremediating the mess.

As with many scientific discoveries, learning about the useful and unexpected eating habits of the larval stage of the Greater Wax Moth Galleria mellonella can be chalked up to serendipity. It began when biochemist [Federica Bertocchini] cleaned a wax moth infestation from her beehive. She put the beeswax-loving pests in a plastic bag, later finding they had chewed their way out. Intrigued, she and [Paolo Bombelli] ran some experiments using the bugs. They showed the mechanism wasn’t just mechanical and that the worms were digesting the polyethylene, to the tune of 92 mg consumed for 100 worms in 12 hours. That’s about 1,000 times faster than bioremediation with bacteria.

Furthermore, the bugs excrete ethylene glycol, a useful industrial chemical, in the process. Finally, to see if the process can scale, the researchers showed that a homogenate of wax moth larvae could digest PE sheets. This could lead to an industrial process if the enzymes involved can be isolated and engineered. The letter describing the process is a fascinating read.

While this one may not a classically hackish way to deal with plastic recycling, the potential for this method is huge. We look forward to seeing where this goes.

[Images: César Hernández/CSIC]

Beware Common Sense Engineering

I am always torn about the title of “engineer.” When I talk to school kids about engineering, I tell that an engineer is a person who uses science and math to solve or analyze practical problems. However, these days you hear a lot of engineering titles thrown around to anyone who does any sort of technical (and sometimes non-technical) work. “Software engineers” don’t have to be licensed to practice, while civil engineers do. What’s in a name and does any of this matter?

Continue reading “Beware Common Sense Engineering”