Browsed by
Category: Technical

Ai-Da creates art – sort of

Ai-Da creates art – sort of

AI is increasing at ever fast rates and in all conceivable parts of our lives. We have commercially viable AI driving cars, AI that can identify pictures and elements in pictures, teach robots how to run/walk/jump and navigate, language bots that can write news and informational articles that are indistinguishable from real writers, comprehend and explain jokes, and even generate art.

Ai-Da is an AI enhanced robot created by Aidan Meller that generates art. It uses its cameras to observe, and then generate a variety of art based on what it sees. You can see her work on her instagram channel.

It appears that Ai-Da is likely just a camera, image filters much like you’d find in Photoshop, and a computer controlled limb to generate art using her robotic arm. The creators seem to also enjoy putting words into her mouth. Lots of them – even to the point of giving a Ted talk. It can come off a bit pretentious, and I even feels like there is a touch of deliberate misleading going on. Folks that don’t understand there is ‘someone behind the curtain’ pulling the strings and putting the words in her mouth might believe it’s the AI’s opinion – which it really isn’t.

Still, it’s an interesting accomplishment – I just wish the creators would be a bit more honest about what they’re doing and no try to convince people the AI itself is coming up with the words and that her artwork is more a product of well-known image algorithms as opposed to intelligence – let alone consciousness.

Ore no Ryomi

Ore no Ryomi

Ore no Ryomi was one of the earliest cooking games that I ever saw for the PC. David Galindo was inspired years ago by a Japanese import game on a demo disk that came in Playstation Magazine. That game was called Ore no Ryouri (developed by Argent for the PS1) but it never saw release in the US despite being hugely popular in Japan. Galindo made a fan PC game using much more hand-drawn sprites and much more simplified play and released it into the wild as shareware.

Fast forward to today, and there are countless cooking games of all sorts out there – and it’s a very popular genre. But Ore no Ryomi is still one of my favorites. I recommend going and downloading a copy from Vertigo Gaming. It’s freeware, so you have nothing to lose – and it’s a lot of fun!

Fast forward again, and I recently discovered that the calm background soundtrack in Ore no Ryomi 2 is actually the ‘Neighborhood 4’ track from The Sims.

You are a CIA agent!

You are a CIA agent!

Back in the day, people learned programming by typing in BASIC programs from books and magazines. Besides the books that came with my TSR-80, if there was one book that got my programming bug off the ground, it had to be this one: Basic Fun with Adventure Games. A book I bought for $0.75 at an school book sale when I was around 5th grade.

Basic Fun with Adventure Games by Susan Drake Lipscomb and Margaret Ann Zuanich

What made this book so amazing is that it not only contains a full text adventure game you can type in, but it also teaches you how to write your own adventure game – from concept to implementation. I remember being blown away at how good this book was. Even today it holds up to teach the requirements and skills needed to program your first game. It certainly worked well enough for me as a 10-12 year old to completely write my own game about finding the deed to a castle after your rich uncle died. Highly recommend checking it out.

It was the most amazing 75 cents I spent in my entire childhood and still holds a special place in my heart. My copy still sits on my bookshelf next to the college programming textbooks.

Resources:

Links:

Read Your Body Language—Without Cameras

Read Your Body Language—Without Cameras

More and more of our devices have cameras that watch you and microphones that listen to you – and in many cases, all the time. This data almost never stays in your house nor in your device, it gets sent across the internet where it is collected, saved, monitored, and used to improve the product’s AI and pattern matching. Under many of those license agreements we blindly click through, those recordings can be kept and used for a wide variety of purposes.

This has led to disturbing problems like voice records from our devices being subpeonaed and used in criminal trials. Recordings from Alexa devices are regularly listened too by Amazon workers. It doesn’t stop there: outside vendors are often allowed access to your Google data (which can include recordings/messaging/email data). Facebook uses humans to read and train data from the Messenger app. Voice messaging services can use overseas human labor to listen to and transcribe messages. There are whole 3rd party services such as Scale that sell human labor that is allowed access to the primary company’s collected data to identify video, photo, audio, and any recorded data from their services into machine training data.

It sounds futuristic and perhaps more than a little invasive—computers watching your every move, devices listening to everything you say. There are already privacy and consumer protection groups raising these issues, and growing lack of trust of companies to use the data in the safest way. To combat that increasing lack of trust, Google’s Advanced Technology and Products division (ATAP) is exploring technologies that don’t have to rely on a camera to see where you are and what you’re doing. Instead, they can use radar and radar-like mechanisms that don’t need direct image data. ATAP spent the past year exploring cool new radar-based methods to understand our intentions and then react to us appropriately.

I for one welcome advancements that keep the privacy of our homes private.

Physical Aimbot Mouse

Physical Aimbot Mouse

Kamal Carter built a servo-controlled robotic rig that moves a mouse exactly where targets are by scanning the screen for specific colors. It works well in the FPS trainer AimLab, but it’ll need more work to be accurate in a real game.

Wisdom from Robert Martin of Clean Code

Wisdom from Robert Martin of Clean Code

Some really wise quotes:

No matter how bad your legacy code is, never EVER create a project to ‘clean up the code’. It will never get completed, you’ll inevitably have to stop, and it will end up worse than you started. This has happened every time in my experience.

The only proven way to get out of bad code requires EVERYONE on the team to get on the same page of how code is supposed to be written. Make them take the Clean Code class/read the book and then use the boyscout approach. That approach is every checkin you check in the code a little better than you found it. That’s it. In time, those little refactors move the ship in the right direction, become dominant, and then surround and destroy the bad code.

Code that has not been touched for years likely doesn’t NEED to be touched. Sure, it may be messy, but if it works, there’s no point in spending time on something you aren’t going to improve functionally.

Code reviews are largely useless. People go in, listen for 5 minutes and then at the end everyone leaves saying, “I sure hope he knew how it all worked because I toned out.”

TODO comments are fine, but should be completed before submission and never checked in. After they are checked in, they become TODON’T comments because they never get completed.

If people get into an argument about syntax/details and it lasts more than 5 minutes, then neither person has solid evidence for why it should be their way. Just flip and coin and move on.

Running Windows 1.01 and old versions of DOS

Running Windows 1.01 and old versions of DOS

I learned to program back on an old TRS-80 Model III computer as a kid. Long before Windows and even DOS, most home computers required you type in programs or load them from cassette tapes. If you were really rich, you might afford a floppy drive, but that was an expensive luxury I never had. My next computer was an IBM XT, and it ran the advanced and stalwart DOS 3.30 – which was dramatically better.

Running those old operating systems today requires you either buy one of those old systems and keep it running, or you have to emulate them. You can easily emulate DOS 3.3 and Windows 3.0 and higher on VMWare or Virtualbox, but going earlier than doesn’t seem to be supported anymore.

Enter 86Box – an emulator that lets you emulate REALLY old machines. In fact, I was able to get Dos 3.2 running Windows 1.0.

Here’s what you’ll need:

Part 1 – 86Box Setup

  1. Download 86Box and install it (source is on github).
  2. Download the latest romset and put it in the directory for 86Box called roms\
  3. Download DOS 3.2 image disks here.
  4. Download Windows 1.01 image disks here.
  5. [For later fun: download any of the other amazing images on the parent page]
  6. Start 86Box and set up 86Box by selecting Tools->Settings from the top menu, and set the system up with the following settings.

Part 2: DOS 3.2 and Windows 1.01 install

  1. Start up the 86Box.
  2. Set Media->Floppy 1 to disk01.img, then issue a ‘CTRL-ALT-DEL’ to reset it. The system should start up and boot to the dos 3.20 floppy drive
  1. Run ‘fdisk’ and it should detect your hard drive. You’ll need to create a partition to set up the hard drive.
  1. Reboot and boot from the DOS 3.20 disk again.
  2. Format the hard drive by using ‘format c: /s’
  3. Set Media->Floppy 1 to ‘DISK1-SETUP.IMG’ from the Windows 1.01 (5.25)
  4. [optional] type ‘set prompt=$p$g’ if you want to see your full path in the command prompt
  5. Run ‘setup’ from a: and follow the instructions to install Windows 1.01 on C:. Change the disks when prompted by selecting Media->Floppy 1 and setting it to each of the floppy disks for the Windows setup until it’s completed.
  6. type ‘C:’ to switch to the hard drive
  7. ‘cd \windows’
  8. ‘win’ to start windows
  9. Voila!