HNHacker News
TopNewBestAskShowJobs

mek6800d2

129 karma · joined September 9, 2021

Senior Software Developer
submissionscomments
mek6800d2··on Mp3tag – Universal Tag Editor
I came across his article about a month ago and likewise enjoyed it. I was a little disappointed (but only a little) when I discovered afterwards that his suggestion of using event time codes to set off explosives on stage was actually suggested in the ID3v2 standards themselves!

The fanciful ideas on the POPM frame were very interesting. The ID3v2 standards author's late 1990s, pre-massive-spam-onslaught design choice to include an email address seems kind of quaint now!

mek6800d2··on A History of C Compilers – Part 1: Performance, Portability and Freedom
Obligatory mention of Ed Post's "Real Programmers Don't Use PASCAL"! You switched from Pascal to C instead of Fortran, but I suppose that is semi-acceptable!

https://www.ecb.torontomu.ca/~elf/hack/realmen.html

mek6800d2··on Buzz: A lightweight statically typed scripting language
Slight correction: TCC is not interpreting the source file - it compiles and links the program and then runs it.
mek6800d2··on NASA's Voyager Team Focuses on Software Patch, Thrusters
I'm 99% certain that the spacecraft computers were not programmed in Fortran. Several years ago, I investigated this meme for my own interest and all arrows seem to point back to this 2013 Wired article as the source (also referenced in your muckrock link): "Interstellar 8-Track: How Voyager's Vintage Tech Keeps Running" ( https://www.wired.com/2013/09/vintage-voyager-probes/ ) .

The 2013 article was based on an interview with the current (2013) Voyager project manager, who began working on the Voyager project in 1984, a few years after the 1977 launches.

First off, I'm guessing that project manager said "Fortran Five" (while thinking "Fortran V") and the writer wrote down "Fortran 5". The Wikipedia article for Fortran (which also references this Wired article, erroneously I think) says there was only one Fortran 5, introduced by Data General in the late 1970s. Other companies offered Fortran V.

Second, I think the key phrase in the quote is "control and analysis software". To me, this connotes the ground system: mission control and science data analysis. And Fortran was commonly used in ground processing and such code could be ported to Fortran 77 and later C.

The on-board spacecraft flight software would be another matter. Voyagers 1 and 2 were launched in 1977. I can't imagine trusting the flight software to newly introduced Fortran V compilers (or even a pre-release DG Fortran 5 compiler). And then switching compilers to Fortran 77 and then C. Possible, but IMHO, not likely.

I am open to being corrected. Regarding FOIAs, I had not thought of going to that extreme and, as your link to the muckrock request verifies, I had also learned that the papers were the property of Caltech, not NASA. Which is unfortunate as the documents and communications mentioned in the link below promise some fascinating reading just begging to be made available online!

I highly recommend reading "Computers in Spaceflight: The NASA Experience" at https://history.nasa.gov/computers/contents.html . (The author of the history did visit the JPL archives and was able to read a fascinating assortment of documents in hardcopy form.)

Chapter 6, "Distributed Computing On Board Voyager and Galileo" ( https://history.nasa.gov/computers/Ch6-2.html ), describes the Voyager computers in some detail. There were 3 computers:

(1) Command Computer Subsystem (CCS) - command processing/sequencing, etc. This computer was carried over from the Viking missions.

(2) Attitude Control System - used a revamped, beefed up CCS computer.

(3) Flight Data System - telemetry and science data handling/transmission. Because of the high data rates, a new computer was needed. A hardware engineer and a software developer collaborated on the design of the computer. Knowing the timing requirements, they developed the CPU's hardware and instruction set on the fly until the software (a changing mock-up I assume) could meet the requirements. (Some of this I might have read elsewhere.)

As I noted, what a treasure trove their memos and communications from this time would be if they were online!

mek6800d2··on RePalm
In 2018, I read James M. Tabor's Blind Descent: The Quest to Discover the Deepest Cave on Earth (pub. 2010), which particularly focused on Bill Stone's and ALexander Klimchouk's respective explorations. (Contrary to perhaps popular understanding, as evidenced by an answer I saw on Quora that asserted that the temperature got hotter and hotter the farther Klimchouk's team descended in "their" cave, Stone's and Klimchouk's teams started out high in the mountains and temperatures were freezing throughout the descents; furthermore, Stone's and Klimchouk's deepest descents still ended above sea level. [The Quora question had something to do with digging deep into the earth.])

Anyway, this was the first I'd read much about caving and, in browsing around the web, I discovered that Palm Pilots were(/are?) used by serious cavers for mapping caves. Auriga (https://auriga.top/) was the most frequently referenced Palm app I saw; its latest update was in December 2022. Obvious advantages as I understand them are: (1) long battery life coupled with replaceable AAA batteries; (2) a display that can be read in low light without battery-draining backlighting. Phone and wi-fi are useless underground. (I vaguely recall reading somewhere that ~80Khz radios for use in caves were being developed; equally vague memory: I believe initial prototypes were based around audio amplifiers that happened to reach up into that frequency. Okay, a 2018 Hackaday has links to more information, although not about what I [mis]remembered: https://hackaday.com/2018/07/11/ham-designed-gear-used-in-th...)

Also, sometime I saw an article about automotive performance afficianados using a Palm App to interact with their engines' onboard computers -- in the PalmOS Emulator (POSE) on Windows laptops. Obviously they liked the app and I imagine they had a considerable intellectual investment (e.g., historical experimental settings and performance results, etc.) that made them loathe to switch to more modern apps.

But yeah. I cleaned the battery crud out of my Palm M105 last month, put fresh batteries in, and the digitizer is shot. So, back to my phone ... :)

mek6800d2··on Show HN: A nice C string API
I read something about this recently, somewhere, maybe HN. Specifically, in calloc(), what is done and what should really be done if the multiplication overflows. As will happen, for example, if you try to calloc() two elements of size SIZE_MAX, when SIZE_MAX is the maximum representable unsigned integer value on the machine. So, I don't think calloc() is available or intended as a way to circumvent malloc()'s size restriction.
mek6800d2··on Japanese have been producing wood for 700 years without cutting down trees
Yes. The linked post says Japan is the 4th largest importer of wood. My geography professor in 1981 told us about it being cheaper to send raw wood logged in the Pacific Northwest to Japan for finishing than it was to ship it across the country. And, in Collapse I think, Jared Diamond talks about Japan "exporting" its deforestation to less-developed countries. Other countries do this too (and for other natural resources too), of course, but any of the "sustainability" of these old practices is greatly outweighed by the damage done by mass logging in the less-developed countries.
mek6800d2··on SpaceX is now building a Raptor engine a day, NASA says
> Remember "Field of Dreams"? "Build it and they will come?" That's typical hollywood bullshit advice.

Apparently you don't. Costner's character heard a voice saying, "Build it and he will come", referring to his father. So you took this as personal advice, albeit "bullsh!t" advice. More power to you ...

mek6800d2··on FaCT: Constant Time Programming Language
No, I think. Much like your examples, I have in mind "False Data Dependencies" in the CPU. I came across this on StackOverflow several years ago. It is a long question and a long, informative thread about seemingly irrational performance differences: "https://stackoverflow.com/questions/25078285/replacing-a-32-..."
mek6800d2··on Retired U.S. generals, admirals take top jobs with Saudi crown prince
Your comment reminds me of a scene in the Rolling Stones' Altamont Concert film: Keith Richards is hanging out of his dressing room door and he answers a queston, "Yeah, we sold out, but it was for the money so that's okay! (laughter)" From Keith Richards, it was funny. A retired general claiming the military did not provide enough incentive to guard national secrets would also be laughable, but in a different sense.

Unrelated to the topic of this discussion and elsewhere in the film, Mick Jagger answers another question, "Am I satisfied? Sexually, yes. Philosophically, no." (Working from hazy memories here -- I last saw the movie in the 1970s, I think.)

mek6800d2··on US opts to not rebuild renowned Puerto Rico telescope
Back in the 1990s, I read a book about genomics by an English scientist who, in the introduction, remarked that it was a well-known but little-discussed secret among researchers that it really does help to throw money at a problem.

Regarding profit-driven companies, I worked for GE's Space Division on a big NASA contract back in the early-to-mid-1980s (and it was a great experience). Unfortunately, the defense side of the division was caught cooking the accounting books and the entire division, defense and civil, was barred from bidding on new government projects. Temporarily, of course, but long enough to result in our facility being dissolved after finishing a couple of smaller commercial projects already in the pipeline. (Coincidentally, one of my friends at GE had a master's in astrophysics and had spent a summer or two at Arecibo.)

At about the same time, Rockwell (I believe was the company) was caught charging defense project cost-overruns to its Shuttle contracts. On the plus side, private-sector personnel don't have that "lazy" gene that public-sector personnel have, so, aside from the cheating left and right, we're better off channeling money to the private sector, who are well-known for the superior quality of their goods and services.

mek6800d2··on Ask HN: Can you recommend me a fast, light text editor for Windows?
I'm guessing you mean the FastStone image viewer - I love it too. I hadn't heard of EditPlus before, but I should look into it. (I've been using the free EditPad Lite for the past 15-20 years for quick editing and, for more lengthy work, MicroEMACS under Cygwin or less frequently JASSPA MicroEMACS in Windows proper.)
mek6800d2··on Granting Pardon for the Offense of Simple Possession of Marijuana
Okay, I'll bite. "Pontual"? Are Google and I missing something? The top result is a Google Translate rendering of the Portuguese word "pontual" as "one-off" in English, which kind of fits your intent, I guess. However, various P->E dictionaries translate the word as punctual or sporadic. (Any Portuguese speakers who can shed some light for me on the difference between Google Translate and the dictionaries?) I didn't see any Google results (in the ones I scanned) indicating pontual had been appropriated into English. Am I just not hip to the latest slang?
mek6800d2··on Comfy Software: A software aesthetic for hackers with depression
From a brief review of Peter Kramer's Against Depression (2005):

Consumption (tuberculosis) was viewed as a somewhat fashionable disease, a sign of an artistic and intellectual nature. (It was probably viewed that way by artists who contracted it; the greater "unwashed masses" who also were afflicted with the disease had no such pretensions.) Of course, tuberculosis eventually succumbed to medicine and fell out of fashion. (It is still a problem in communities underserved with health care.) To a certain extent, depression has some of that cachet attributed to consumption by earlier generations, but Dr. Kramer thinks that depression will eventually go the way of tuberculosis and be cured with medicine.

I've suffered from severe, treatment-resistant, unipolar depression for over 25 years. I respect those who are able to pull themselves up by their bootstraps and don't let depression define their lives, but there are a lot of us who are not that strong, for whatever reason, and for whom depression majorly colors our lives.

mek6800d2··on Open Source PC That Fits in Your Pocket
YADD = YACC++ ? ("yet another different device") :-)
mek6800d2··on MicroVAX 78032
Your comment reminded me of Paul DeMone's signature line on USENET's comp.arch back in the day!

The 801 experiment SPARCed an ARMs race of EPIC proportions to put more PRECISION and POWER into architectures with MIPSed results but ALPHA's well that ends well.

mek6800d2··on Cppfront, Herb Sutter's proposal for a new C++ syntax
I used to work for a company whose product was a fairly large satellite control center software system (and we could supply hardware if needed), written in C++. It's used for a lot of commercial fleets. For example, back in the 2000s, when I worked on it, it was used for CDRADIO/Sirius's fleet. (I don't know if it's still used for SiriusXM's Sirius satellites, if any.)

I liked C++ in some ways, but as a whole, I think, C++ didn't reduce -- and may have increased -- the complexity of our software compared to the complexity of an equivalent C implementation. (I'm talking about the complexity of the software itself, not the complexities of the tasks it was doing.) The distribution of the complexity in the code would just have been different between the two implementations. IMHO.

So I mostly stick with C or other non-C++ languages now. Of course, C++ has expanded and changed greatly since then.

mek6800d2··on Transcending Posix: The End of an Era?
I agree with you about the massive damage caused by Microsoft, but ... it was there. In the DOS times, there was no choice between DOS and Unix on PCs -- there was effectively just DOS. Aside from niche things like Coherent (IIRC), Unix was only available on workstations and up, too expensive for small businesses and consumers.

Also, VMS and other OSes were the ones that ran for years without rebooting. Unix at the time was not so stable. Before Tcl, John Ousterhout wrote a log-structured file system for Unix because their Unix systems crashed often enough and took so long to boot that a possible loss of data but fast boot-up was deemed better than the lengthier downtimes with the existing file system.

So the PC market went with Microsoft and its encompassing environment, much to everyone's detriment. Fortunately, we've all moved on to the web and JavaScript and everything is now sunshine and roses. :-)

mek6800d2··on Melting ice reveals two-million-year old peat
Kind of like stopping a volcano or an earthquake. What happens when the problem gets too far gone and the vaunted human ingenuity is utterly impotent in solving the problem? (I mean the point after which there is literally nothing humans could do to react to the problem.)

To get an idea of the monumental complexities of global warming, I recommend reading The Emerald Planet: How Plants Changed Earth's History by David Beerling. He describes a multi-discipline investigation of global warming involving paleobotanists to atmospheric scientists, climate scientists, oceanographers, chemists, physicists, and the list goes on.

I also recommend googling "planetary boundaries" and "tipping points". Climate change is only one of the boundaries whose transgression threatens us. And the boundaries interact with each other and we don't really know how these interactions might affect rates of change.

So, radical changes now -- bad. Human ingenuity and radical changes in the future on the threshold of global catastrophe -- good.

mek6800d2··on Why aren't there C conferences? (2018)
VAX/VMS called them "descriptors", which had IIRC 16 bits of flags, a 16-bit length, and a 32-bit pointer -- descriptors could be used for different object types, not just strings. The 64k length limit and 32-bit address were not a big issue back in 1982 when I first used them.

I used (Wirth's standard) Pascal in our compiler class in college. String handling was actually pleasant in Fortran-77 on VMS, so I figured pure Pascal had the worst string handling of any language -- until I started programming in C. I finally made peace with C strings, but a couple of decades later, Forth said to me, "Here, hold my beer." I wrote some Forth-word equivalents of some of the C Library string functions to make my life a little easier! :)

mek6800d2··on What have we lost? – Demo of exotic OSes (2021) [video]
I worked for 5 years on VMS for a real-time satellite image processing HW/SW system for NASA. VMS was wonderful. At another company, I then worked on a Unix system for a few years, then 2 years on a port of our software to Unix. (The port was smooth and quick, thanks to VAX C and its relatively complete library; most of the 2 years was spent adding new capabilities for a particular customer.) The rest of my career has mostly been under Unix.

Microsoft hired the main architect of VMS, Dave Cutler, away from DEC to design Windows NT. (VMS++ = WNT!) I haven't worked on any in-depth Windows programming projects. I did read an article some years ago about Cutler, VMS, and WNT. The author pointed out an insightful distinction between VMS and Unix with regard to I/O operations: VMS tells you when an operation completes, whereas Unix tells you when you can begin an operation. As a result, I think, asynchronous I/O under VMS was there and available from the git-go, but always seemed like some odd thing grafted onto Unix, making it more painful than it should have been. I have never used it, but I believe WNT's overlapped I/O was patterned after the VMS model?

mek6800d2··on What have we lost? – Demo of exotic OSes (2021) [video]
Microsoft hired the main architect of VMS, Dave Cutler, away from DEC to design Windows NT. (VMS++ = WNT)
mek6800d2··on There are many ways to fail to read a file in a C program
But it works well! Those file options are syntactically optional. I worked on VAX/VMS with Fortran for 5 years and then helped develop generic spacecraft control-center software for NASA in C under Unix. In 1992-1993, we ported the system to VAX/VMS for a European Space Agency project. It went very smoothly and quickly, thanks to DEC's largely complete implementation of the C library (including BSD networking), leaving us with plenty of time to develop the project-specific software. I ported over Sun's rpcgen and GNU's flex and cccp; plus bison or an actual yacc. As you showed, some of the C calls have optional parameters; e.g., strerror() could take an additional argument, a VMS status code, that would provide a more specific error message than just the ERRNO-based messages. However, in almost all cases, the normal Unix call signatures worked as expected. (I did have to come up with a work-around for our one case of a network server using fork().) Thumbs up on VMS and C!
mek6800d2··on A Review of the Art of the Metaobject Protocol (2010) [pdf]
I think you misunderstood eadmund's point about Julia and multiple dispatch. :( Still, your succint summary of some of raku's capabilities makes me, at least, want to study it in more detail -- so, thank you!
mek6800d2··on Heat waves and flooding: Why U.S. infrastructure can't withstand extreme weather
Given Texas's own "very stable energy grid", could that bargain-price fast fiber plan possibly be, in reality over time, just an expensive plan for slower fiber? (I.e., looking at actual amounts of data transferred interleaved with downtime, rolling blackouts, etc.) /s, although you do make Illinois sound pretty cool!
mek6800d2··on A Tutorial on Portable Makefiles (2017)
Try lndir to create a separate build directory that has symbolic links to the files in the source tree.
mek6800d2··on Using GNU Stow to manage your dotfiles (2012)
A load off my mind too -- I now know there at least two of us in the world! :)
mek6800d2··on Carbon Language: An experimental successor to C++
"... around age 10." C++ (not to mention C)? IIRC, I remember seeing B.S.'s "C with Classes" appear in ACM SIGPLAN Notices in the early 1980s -- 40 years ago. I don't think it hit its peak 10 or even 15 years after its early development. Given that it's C++, that's a pretty major exception.
mek6800d2··on 8-Part Film Adaptation of Tolstoy's Anna Karenina Is Free Online
Youth and timing! I dropped out of college after my 3rd semester. I read widely and kept seeing W&P cited as the greatest piece of literature ever. I read it and liked it -- in two weeks, which was about 100 pages a day. I read it during breakfasts, dinners, coffee breaks and lunch at work, and then at bedtime until 2 in the morning. So, I was able to concentrate on it and enjoy it; being young, I could slough off the lack of sleep.

I read AK next and it was great. A customer at work saw me carrying AK and suggested I read BK, so I did. I too found BK to be my favorite of FD's novels. I also read most of his other novels, except I only got part-way through The Idiot. When I returned to school, I took a Russian Literature course, for which I reread W&P, AK, BK, and Crime and Punishment (instead of using the Cliff's Notes).

(My professor pointed out the humor at the end of AK, something I had failed to see in two readings: the narrator is talking to what's-his-name, who has a horrific toothache and therefore doesn't really care that the most beautiful woman in Russia ... oops, no spoiler here! It was kind of funny when he explained it and he was a zillion times more knowledgeable than me about FD and FD's writings.)

Again, I had youth on my side and, as you noted is important, I had the time to concentrate on the books. Decades later, a few years ago, I finally read The Idiot all the way through -- it was a long slog; it being a weird story anyway didn't help.

mek6800d2··on Motorola 6800
There was the 6809 in between. I remember BYTE magazine's cover story, "A Microprocessor for the Revolution". Well, not quite, as it turned out! :)
← PreviousPage 2 of 3Next →