Software Dev

Swift Algorithms

Apple announced an open-source algorithms project with some very over-the-top, flashy language. πŸ˜‰

I’m excited to announce Swift Algorithms, a new open-source package of sequence and collection algorithms, along with their related types.

πŸ‘‰ Announcing Swift Algorithms

This library seems to be a sort of farm league for things that might make it to big leagues of the Swift Standard Library eventually.

Swift Algorithms lets you do just about anything you can think of with a collection (or two). It lets you do stuff like rotate [10, 20, 30, 40, 50, 60] to [30, 40, 50, 60, 10, 20], or find all possible permutations of [10, 20, 30], and lots of other things like chunking, random sampling, etc. Fun. πŸ€“

Via iOS Dev Weekly.

Software Dev

All the Public APIs

First off, it’s cool that there is a list of free, public APIs you can use on your own project. IMHO, this is the way to get started on writing an interesting app because you don’t have to host anything or write a backend.

πŸ‘‰ Public APIs: A collective list of free APIs for use in software and web development

And the funny thing as that the Public APIs has its own public API. πŸ€―πŸ˜†

πŸ‘‰ Public API for Public APIs

Is the Public APIs API in the Public APIs list? I dare you to check.

You can also check this blog for my own humble collection of APIs. πŸ€·πŸ»β€β™‚οΈ

Software Dev

Time (Swift lib)

Time is really confusing when you think about it, especially when you are programming around it. And especially in a mobile app, where the time on the device could be in any timezone and is not guaranteed to be reliable.

I have seen plenty of “time” bugs in my days. I’ve seen time beat some amazing programmers, even leading one of them to question aloud, “What is time?”

This new Swift “Time” library looks like a good shot at simplifying time and restoring sanity.

πŸ‘‰ Introducing Time

I love that the basic classes in this library are Clock and TimeZone. Yesss, that is some simple SOLID goodness!

πŸ‘‰ Time on GitHub

Via iOS Dev Weekly.

The World

Apollo 11 Source Code πŸš€

In the coolest news ever, the source code for the freakin’ Apollo 11 space modules was recently revealed on GitHub. 🀩

Specifically, this is the source code for the guidance systems of the Lunar module (the thingy that landed on the surface of the moon) and the Command Module (the can that orbited the moon during the mission).

πŸ‘‰ Apollo-11 on GitHub

A few cool points:

  • The code submission date is March 28, 1969.
  • The programmer is one Margaret H. Hamilton, Colossus Programming Leader Apollo Guidance and Navigation. If anyone is still saying “girls” can’t code, then you can seriously stop now.
  • There are two literal modules in the project: Comanche055 (Colossus 2A, the Command Module), Luminary099 (Luminary 1A, the Lunar Module). So much for thinking of “modules” as just a programming concept. These were two physical components literally flying around the moon.
  • These nerds were funny too. The master ignition routine is called BURN_BABY_BURN. πŸ˜‚
  • The code seems to be written in some sort of assembler language, as in 1969 basically no modern languages were yet invented.
  • The code comments are currently being translated to other spoken languages as part of this open source project. For all mankind, mothers! 🌎