@Moosader@mastodon.gamedev.place avatar Moosader , to random

Computer Science as a degree is kind of weird. Most people are training for software development jobs but it doesn't really teach software development skills.

Community colleges have job oriented certs and stuff, but as far as universities go, it's pretty much still just CS as an option, right?

Like a CS degree generally doesn't have stuff like source control, APIs, dependencies, etc. as curriculum - it's a degree for how computers work at a base level.

@Moosader@mastodon.gamedev.place avatar Moosader , to random

I like to use tools when I'm teaching, and I'm teaching more game programming to kids age 10-16 in the summer. Love2D worked really well, though I'd like to help them also learn how to make game art.

I mostly just know but I'm not giving children flash drives with a program named "gimp" on it. Can you imagine what their parents would think??

@waeiski@vis.social avatar waeiski , to random

Hey everyone involved in , are you looking for a in ?

Aalto University in Finland has several positions open for assistant professors. The topics include , , , , and Human-Computer Interactions.

https://www.aalto.fi/en/department-of-computer-science/assistant-professor-positions

@william_shotts@mstdn.social avatar william_shotts , to random

Hey! There's a new full of yummy computer science books (including mine!) from @nostarch with proceeds going to @eff.

Check out "Computer Science the Fun Way":
https://www.humblebundle.com/books/computer-science-fun-way-no-starch-books

@herbst@social.epfl.ch avatar herbst , to random

Hello

I'm Michael, professor in the institutes of and science and head of the @MatMat group at .

I work on the simulations of materials, mainly density-functional theory (DFT) methods, understanding errors and in predicted materials properties.

I use techniques from
and
develop related packages such as the density-functional toolkit ().

@blog@shkspr.mobi avatar blog , to random

Some esoteric versioning schemes (monotonic moronity)

https://shkspr.mobi/blog/2025/02/some-esoteric-versioning-schemes-monotonic-moronity/

Since time immemorial, software has had version numbers. A developer releases V1 of their product. Some time later, they add new features or fix bugs, and release the next version.

What should that next version be called? Modern software broadly bifurcates into two competing standards; SemVer and CalVer.

SemVer

Semantic Versioning is usually in the form 1.2.3, the last digit is usually for minor bug fixes, the second digit for new functionality, and the primary digit for big and/or breaking changes.

The semantics are pretty loose. There's no real consensus on when a new "primary" number should be issued. There are two main weaknesses:

  1. The numbers might not be decimals. Is V1.29 newer or older than V1.3?
  2. There's no semantic information about when the software was released.

Which leads us to…

CalVer

Calendar Versioning is, ironically, more semantic than SemVer. The version number is the date when the software was released. For example, Ubuntu releases are in the form of YY.MM - the latest stable release at the time of writing is 24.04 - so we can tell that it was released in April 2024.

There are three main problems with this approach.

  1. ISO8601 or GTFO! Surely these should use YYYY-MM to make it obvious this is a date?
  2. Minor bug fixes are often given a release number like 24.04.1 - is that still obvious it is date-based? Was it really released on the 1st of April?
  3. No information about big and/or breaking changes. Software released several years apart may be functionally identical whereas software released days apart may be incompatible.

Alternatives

So, what other ways can we number software versions?

EffVer

Effort Versioning is, I think, a sensible way to standardise SemVer. It attempts to show how much effort it takes to move between versions.

PrideVer

How much Pride do you have in your software release?

This is SemVer for people with an ego and the coding chops to match.

RuffVer

Ruff is a sort of bastard child between SemVer and CalVer, but adds this delightful complication:

Stable releases use even numbers in minor version component: 2024.30.0, 2024.32.0, 2024.34.0, … Preview releases use odd numbers in minor version component: 2024.31.0, 2024.33.0, 2024.35.0, …

It's the versioning equivalent of setting up a fully scalable cloud database and hand-chiselling HTML out of stone for the cookery blog you update twice per year.

0Ver

Zero-based Versioning tells us that it is forbidden to ask and a sin to know when a piece of software will be completed.

Essentially, it is SemVer for cowards who are afraid to commit. The opposite of PriveVer.

PiVer

The venerable TeX uses Pi Versioning. The current version is 3.141592653, the next version will be 3.1415926535.

As the software gets refined, it gradually reaches a state of perfection. This is a charming versioning scheme which shouldn't be used by anyone other than Knuth lest hubris overtake you!

NameVer

Sometimes marketing takes the reins and insists that consumers need a Named Version to help prevent confusion.

Ubuntu uses things like Bionic Beaver, Distinct Dropbear, and Mantic Minotaur. By convention, names increase alphabetically, so you should know that Jaundiced Jackdaw is before Killer Kangaroo - until you've released 26 version and have to wrap around the alphabet again.

NameVer is helpful for distinct products which aren't related, but probably more confusing than necessary.

WinVer

Microsoft Windows uses this very logical scheme - 1, 2, 3, 3.11, 98, 2000, Me, XP, Vista, 7, 8, 10, 11.

It starts with more-or-less SemVer, then jumps to CalVer, then 4 digit CalVer, then to NameVer, then back to SemVer - skipping 9 because of alleged technical reasons.

Do not attempt to use this versioning unless you want to anger both gods and mortals.

KelVer

Absolute Zero is defined as 0K. And so, Kelvin Versioning counts down to stability.

Almost the opposite of PiVer - the closer this gets to zero, the closer the code is to being complete.

This versioning scheme is affront to most sane people. But here's to the crazy ones.

Non-Monotonic

You will notice that all of the above are monotonic. That is, they all proceed in one direction and never reverse. Any subsequent version was definitely released later than a previous version. So, in a sense, they all contain some level of semantics.

But they don't have to.

HashVer

Taking the Cryptographic Hash of the code, or a commit, allows one to create Hash Versioning. For example 43317b7 is a HashVer for something which would otherwise have the dull and unworthy name of v0.118.1

But, of course, a hash does have a modicum of semantic information - even if it is only loosely related to the content of the code. What if there were something with no semantics and no monotonic behaviour!?!?

RandVer

Embrace the weird with Random Versioning! It its heart, RandVer says pick any number that hasn't been used before.

Perhaps V7 is followed by V2.5, which is overtaken by V0xDEADBEEF

Absolutely guaranteed to have zero semantic content.

What have we learned today?

The square-root of bugger-all.

@pascaline@w3c.social avatar pascaline , to random

The ERCIM Fellowship Program for 2025 is now open for applications! 🚀 A unique opportunity to work with leading European research institutes, collaborate on cutting-edge projects, and expand your network.

📅 Apply by: 31 March 2025
🔗 More info & application: https://fellowship.ercim.eu/

Don't miss out—share with your network! -news

@LivInTheLookingGlass@tech.lgbt avatar LivInTheLookingGlass , to random

Oh dang, my post is waaay out of date now. Let's do it again!

I have a in and . I went to for undergrad and for my graduate degree. I currently work at for the , which focuses on helping young children acquire language (and therefore other learning skills) faster.

In my spare time, I develop such as

I spend a fair bit of my time these days on , specifically into the Sequence and its extensions.

I'm also a hobbyist editor on OpenStreetMap.

, , and happily engaged to my sweetheart.

We have two cats: and (yes, from )

There are two cats in frame, near a very small cat tower. On top of the tower, Ophelia is laying down. Below, in a meercat-like pose, is Maya. She is trying to get a better view of the other cat. They didn't know each other very well at this time.
A gray cat, Maya, is laying on the couch. She is curled up such that her belly and paws are all exposed, though her tail is tucked near her feet. She looks peacefully asleep
A gray/gray-orange cat is laying on a white blanket. Her name is Ophelia, and she has one eye half open, which is a brilliant green-orange. She is very relaxed. You get the faint impression of a person's legs underneath the blanket

ALT
@gutenberg_org@mastodon.social avatar gutenberg_org , to random

Jean Sammet: An Accidental Computer Programmer

The IBM programming language specialist helped develop Cobol in 1959

By Amanda Davis

https://spectrum.ieee.org/jean-sammet-accidental-computer-programmer

https://en.wikipedia.org/wiki/Jean_E._Sammet

ALT
@gutenberg_org@mastodon.social avatar gutenberg_org , to random

"We may say most aptly that the Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves."
(Notes on the Analytical Engine invented by Charles Babbage)

Happy Birthday Ada Lovelace!

She was an English mathematician and writer chiefly known for her work on Charles Babbage's proposed mechanical general-purpose computer, the Analytical Engine. She was the first to recognise that the machine had applications beyond pure calculation.

https://en.wikipedia.org/wiki/Ada_Lovelace

Diagram of an algorithm for the Analytical Engine for the computation of Bernoulli numbers, from Sketch of The Analytical Engine Invented by Charles Babbage by Luigi Menabrea with notes by Ada Lovelace

ALT
gutenberg_org OP ,
@gutenberg_org@mastodon.social avatar

There is a comprehensive article on Ada Lovelace´s here:

Untangling the Tale of Ada Lovelace
By Stephen Wolfram

https://writings.stephenwolfram.com/2015/12/untangling-the-tale-of-ada-lovelace/

gutenberg_org OP ,
@gutenberg_org@mastodon.social avatar

In addition, the paper "Sketch of the Analytical Engine invented by Charles Babbage, Esq."
by Luigi Federico Menabrea and translated by Augusta Ada Lovelace will be available pretty soon at PG.

Original files are available at @internetarchive
https://archive.org/details/scientificmemoir03memo/page/665/mode/1up

ALT
  • Reply
  • Loading...
  • gutenberg_org OP ,
    @gutenberg_org@mastodon.social avatar

    What did Ada Lovelace’s program actually do? @TwoBitHistory

    https://twobithistory.org/2018/08/18/ada-lovelace-note-g.html

    @gutenberg_org@mastodon.social avatar gutenberg_org , (edited ) to random

    American admiral and computer scientist, (designed COBOL) Grace Hopper was born in 1906.

    She created the first compiler, the A-0 System, in 1952. She was also one of the first programmers on the Harvard Mark I computer. Hopper popularized the term "debugging" in computing after discovering an actual moth causing a malfunction in the Mark II computer.

    https://en.wikipedia.org/wiki/Grace_Hopper

    ALT
    gutenberg_org OP ,
    @gutenberg_org@mastodon.social avatar

    "I had a running compiler and nobody would touch it. ... they carefully told me, computers could only do arithmetic; they could not do programs."

    ~Grace Hopper (9 December 1906 – 1 January 1992)

    @sebastian@social.itu.dk avatar sebastian , to AcademicChatter group

    Hello to all out there ...
    a group of people here at ITU is exploring how the works (better) for them ... perhaps connecting through academicchatter@a.gup.pe icon AcademicChatter group might help?

    For the mere fun of it, i ll add a

    ALT
    @booktweeting@zirk.us avatar booktweeting , to bookstodon group

    A LOOK AT INTERNET FAKERY takes a computer scientist deep into the history of frauds, hoaxes, disinformation, and propaganda. Lots of detail, especially about the earliest days of the Internet and current AI controversies. SOLID B

    https://www.barnesandnoble.com/w/a-history-of-fake-things-on-the-internet-walter-scheirer/1143054250?ean=9781503632882

    bookstodon@a.gup.pe icon bookstodon group

    @abcfeeds@rssfeed.media avatar abcfeeds Bot , to random

    ChatGPT and other AI are set to create mountains of electronic waste. But there is a cleaner option
    By James Purtill

    Huge data centres built for generative AI will generate millions of tonnes of electronic waste by 2030, the equivalent of discarding billions of smartphones each year, a study suggests.

    https://www.abc.net.au/news/science/2024-10-29/generative-ai-generating-millions-tonnes-electronic-waste-data/104514376

    @Catriona@tech.lgbt avatar Catriona , to random

    Ok reintroduction time I guess.

    I am a 42 year old Scottish woman. I did my degree in and attempted a PhD in before stuff happened and anyway now I'm back at university studying .

    I like but I am bad at it and I try to impress people by saying I speak five but between you and me I'm bad at them, too.

    I'm into as my avatar probably indicates, FF in general, really, and I think is real I mean good. That'll do I think. What else do you need to know?

    @Moosader@mastodon.gamedev.place avatar Moosader , to random

    Course catalog states "Utilize a professional software development environment." as a required part of class.

    I know it's written vague so we as teachers can decide for ourselves. In a way, I consider Visual Studio to be "more professional" for C++ development than VS Code, just because all the big software projects I've worked on used Visual Studio.

    But... If I had everyone in VS Code... I could have one set of instructions for all operating systems. 🤔

    @arstechnica@mastodon.social avatar arstechnica , to random

    We can now watch Grace Hopper’s famed 1982 lecture on YouTube

    The lecture featured Hopper discussing future challenges of protecting information.

    https://arstechnica.com/science/2024/08/we-can-now-watch-grace-hoppers-famed-1982-lecture-on-youtube/?utm_brand=arstechnica&utm_social-type=owned&utm_source=mastodon&utm_medium=social

    Ehay2k ,
    @Ehay2k@mastodon.social avatar

    @arstechnica

    Amazing. Just think of all the extra battles she had to fight only because of her gender.

    @canadaduane@vmst.io avatar canadaduane , to random

    TIL there is an annual international RNG day. The next year's date is chosen randomly each year, on the date of celebration.

    https://rngday.com/en/

    is too predictable

    @Moosader@mastodon.gamedev.place avatar Moosader , to random

    WRITING C++ SLIDES OUTSIDE!! OUTSIDE OFFICE!!

    (also kids keep hitting baseballs into our yard we have like four now.)

    ALT
    @elb@social.sdf.org avatar elb , to random

    By way of , this is my alt account for @elb , where the timelines are getting wonky.

    Long time guy (mid-90s), , and lover of all things . I have a (or four), and microcomputers of various stripes, and I love :s.

    operator (KB8OJH) and enthusiast – Central Electronics, Drake, Electro-Voice, etc. / radios preferred!

    Professional .