On Friday, June 23rd at 1:00 p.m., University of South Florida (USF) is hosting an online information session about their Pathway to Computing graduate certificate. It’s a step towards getting a graduate degree — completing this program earns you priority admission to USF’s master’s degree in computer science program with no GRE required.
If you’re interested in getting a graduate degree in computer science, but have never taken a computer science course or don’t have coding experience, but want to start a coding career, this program is for you!
You might know how to program in a high-level language like JavaScript, Python, PHP, and so on, but do you know what’s happening at the machine level? Have you wondered what pointers and references actually are, or the difference between the stack and the heap, and for that matter, what a “stack overflow” is?
Would anyone be interested in a meetup seminar or two where I explain how your computer works “under the hood,” and maybe even walk you through a little programming at the chip level with hands-on exercises? Let me know.
What might the next decade of software development look like? Richard Campbell has some ideas and shares them in this talk from the 2023 edition of the NDC London conference.
Here’s the video:
I know Richard from my former life at Microsoft. He’s the host of the .NET Rocks and RunAs Radio podcasts, and long-time developer, consultant, and tech company founder, and a damn good storyteller.
The first story he tells is about “The Animal Highway,” the space between his and his neighbors’ house, which is frequented by bears. This actually made me laugh out loud, since when I last saw Richard at a backyard barbecue at his house, we had to scare away a bear cub by being noisy. He picked up a pot and barbecue tongs, I picked up my accordion, and with whoops, hollers, and random squeezebox chords, we chased it away into the woods.
One of the themes that runs through his talk is that technology has grown in leaps and bounds. Near the start of the talk, he uses the example of the Cray X-MP. In 1985, it was the world’s most powerful computer. It sold for millions of dollars and required 200kW of power, which could perform 1.9 at gigaflops (billions of floating-point operations per second). It was used to model nuclear explosions and compute spaceflight trajectories.
The iPad 2 from 2011 also performs at 1.9 gigaflops, but it sold for hundreds of dollars instead of millions, and ran on battery power instead of requiring its own power plant. As Richard summed it up: “26 years later, the most powerful computer in the world is now a device we give to children. And they play Candy Crush on it.”
Near the end of the talk, Richard uses another example of the technological changes that have happened in a lifetime. The picture above shows the first transistor ever, which was made in Bell Labs in 1947.
“It’s pretty hard to look at that,” he said, pointing to the photo of that transistor, “and think ‘M1 chip’.”
In case you were wondering, here’s how many transistors the different variations of the M1 chip have:
Chip version
Number of transistors
M1 (original version)
16 billion
M1 Pro
33.7 billion
M1 Max
57 billion
M1 Ultra
114 billion
If you want an understanding of how we got to the current state of computing and some good ideas of where it might go, Richard’s talk is not only enlightening, but also entertaining. I listened to it on this morning’s bike ride, and you might find it good listening during your workout, chores, commute or downtime.
There’s a Humble Bundle deal going on for the next nine days at the time of writing: the Popular Programming Languages book bundle, featuring books by O’Reilly. There’s a “15 books for $25” version of the deal and a “10 books for $18” version.
If you’re still iffy about parting with that much money, you might be interested in the $1 deal, which gets you these five books:
It’s been a while, so let’s go back to the beginning and build an iOS app!
Join us on Monday, June 26 at 6:00 p.m. at Computer Coach to sit down, fire up Xcode, and write an iOS app. Register here!
It’s been a while since Tampa Bay has had a meetup for Apple platforms — iOS, iPadOS, macOS, watchOS, tvOS, and the upcoming visionOS (as in the OS for Apple’s Vision Pro, a.k.a. “the goggles”). The best way to learn how to develop for all of these platforms is to develop for iOS.
At this meetup, where we’ll build a simple iOS app and get re-acquainted with iOS development with Swift and SwiftUI.
Are you new to iOS development, the Swift programming language, Xcode, SwiftUI, or any combination of these? This meetup session is just for you! You’ll come to the meetup with your Mac with Xcode installed, and you’ll leave with a working app!
This meetup will be a “code along with the presenter” exercise. You’ll fire up Xcode, click File → New, and following the presenter’s work on the big screen, you’ll write code in Swift, build a user interface in SwiftUI, and compile and run the app. If you’ve never built an iOS app before — or it’s been a while — you’ll want to attend this meetup!
You’ll need:
A Mac computer — preferably a laptop, but we’ve had people bring in Mac desktops before.
Xcode 14.3.1. It’s free on the App Store, but it does take a while to download and install. It’s best if you install it in advance.
And because it’s hard to code on an empty stomach, we’ll provide the pizza, courtesy of our sponsor: Okta! We’d also like to thank Computer Coach for the generous use of their space.
Once again: Join us on Monday, June 26 at 6:00 p.m. at Computer Coach to sit down, fire up Xcode, and write an iOS app. Register here!
Here’s something much better and more useful than anything you’ll find in the endless stream of “Chat Prompts You Must Know”-style articles — it’s ChatGPT Prompt Engineering for Developers. This online tutorial shows you how to use API calls to OpenAI to summarize, infer, transform, and expand text in order to add new features to or form the basis of your applications.
It’s a short course from DeepLearning.AI, and it’s free for a limited time. It’s taught by Isa Fulford of OpenAI’s tech staff and all-round AI expert Andrew Ng (CEO and founder of Landing AI, Chairman and co-founder of Coursera, General Partner at AI Fund, and an Adjunct Professor at the computer science department at Stanford University).
The course is impressive for a couple of reasons:
Its format is so useful for developers. Most of it takes place in a page divided into three columns:
A table of contents column on the left
A Jupyter Notebook column in the center, which you can select text and copy from, as well as edit and run. It contains the code for the current exercise
A video/transcript column on the right.
It’s set up very well, with these major sections:
Introduction and guidelines
Iterative prompt development
Summarizing text with GPT
Inferring — getting an understanding of the text, sentiment analysis, and extracting information
Transforming — converting text from one format to another, or even one language to another
Expanding — given a small amount of information, expanding on it to create a body of text
Chatbot — applying the techniques about to create a custom chatbot
Conclusion
And finally, it’s an Andrew Ng course. He’s just good at this.
The course is pretty self-contained, but you’ll find it helpful if you have Jupyter Notebook installed on your system , and as you might expect, you should be familiar with Python.
I’m going to take the course for a test run over the next few days, and I’ll report my observations here. Watch this space!
So what’s this beginner-friendly Android dev tool that we don’t know about?
It’s Ren’Py, a “visual novel engine” that makes it easy to create visual novels — interactive stories featuring a combination of text, images, sound effects, and music — that run on computers and mobile devices.
There are a couple of ways to think of visual novels:
As a “Choose Your Own Adventure”-style book, but in electronic form, and backed with visuals, sound effects, music, and interactivity, or
As a story-driven, turn-based multimedia game, which can fit any number of genres, including adventures, simulations, or role-playing games.
What will Joey cover at the meetup?
In this meetup, Joey’s presentation will cover:
A quick intro to visual novels, including some delightfully ridiculous ones like Attack Helicopter Dating Simulator and I Love You, Colonel Sanders.
A tour of Ren’Py and its basic features.
A look at the code of a beginner-friendly project: a “Choose Your Own Adventure”-style game/novel.
A look at the code of a more advanced project: Attack on Walmart, a turn-based combat role-playing game.
Q&A, which in this case means Questions and Accordion!
Why is it called Ren’Py?
Ren’Py is a portmanteau of ren‘ai (恋愛), Japanese for “romantic love”…
…and Python, the programming language in which it’s implemented, and one of the languages you can use to create Ren’Py visual novels / games.
How much programming do I need to know to make visual novels or games in Ren’Py?
You’ve got options!
If you’re new to programming, Ren’py provides a scripting language that’s easy enough to let you get started writing visual novels after a couple of minutes’ worth of learning, but powerful enough to add a surprising amount of interactivity.
If you know Python or are an experienced programmer, you can harness the entire Python language and its libraries and geek out to your heart’s content.
And, yes, you can program using a mix of both Ren’Py’s programming language and Python.
What platforms can I use to develop Ren’Py visual novels and games?
You can run the Ren’Py development tool on Windows, macOS, and Linux…
…and with a little work, you can even do Ren’Py development on a Raspberry Pi!
What platforms do Ren’Py visual novels and games and run on?
The point of my presentation is that you can use Ren’Py to build visual novels and games for Android. Ren’Py can convert your scripts into an Android Studio project, which you can then deploy to your Android device or submit to the Play Store.