Categories
Programming Reading Material

Humble Bundle’s “Ultimate Python Bookshelf” bundle is available until Monday afternoon!

At the time this article was published, there are 3 days and 21 hours remaining to get Humble Bundle’s “Ultimate Python Bookshelf” bundle. Depending on how much you’re willing to spend, you can get 3, 8, or 24 books at a deeply discounted price, and some of the money goes to two worthy charities. Read on to find out more…

The books

Depending on how much you pay, you’ll get 3, 8 or 24 books.

If you pay $1 – $9.99, you get these books:

  • The Python Workshop
  • The Statistics and Calculus with Python Workshop
  • Web Development with Django

If you pay $10 – $17.99, you get the books above, along with:

  • Hands-on Exploratory Data Analysis with Python
  • Hands-on Machine Learning with scikit-learn and Scientific Python Toolkits
  • Django 3 by Example
  • Python Automation Cookbook
  • Hands-on Genetic Algorithms with Python

And if you pay $18 or more, you get all the books above, plus:

  • Python Data Cleaning Cookbook
  • Deep Reinforcement Learning with Python
  • Data Engineering with Python
  • Modern Python Cookbook
  • Applying Math with Python
  • Python Image Processing Cookbook
  • Python Feature Engineering
  • Practical Python Programming for IoT
  • Python Algorithmic Trading Cookbook
  • Applied Computational Thinking with Python
  • Hands-on Python Natural Language Processing
  • Hands-on Simulation Modeling with Python
  • Mastering Python Networking
  • Artificial Intelligence with Python
  • Python for Finance Cookbook
  • Quantum Computing with Python and IBM Quantum Experience

Interested? You can order the bundle here.

The causes

All Humble Bundles route some of each bundle’s price to one or more charities. In the case of The Ultimate Python Bookshelf bundle, there are two charities that will benefit:

Doctors Without Borders / Médécins Sans Froniteres: An international, independent medical humanitarian organization that delivers emergency aid to people affected by armed conflict, epidemics, natural and man-made disasters, and exclusion from health care in nearly 70 countries.

Stop AAPI Hate: A national coalition addressing anti-Asian racism across the U.S. The coalition was founded by the Asian Pacific Policy and Planning Council (A3PCON), Chinese for Affirmative Action (CAA) and San Francisco State University’s Asian American Studies Department. Between March 19, 2020 and February 28, 2021, Stop AAPI Hate has received 3,795 reported incidents of racism and discrimination targeting Asian Americans across the U.S..

Wait a minute — there are Packt books. Are they worth getting?

As you were reading this article, you were probably wondering about the issue of the less-than-stellar reputation of Packt’s books and if I was going to raise the issue.

Consider the issue raised, Gentle Reader.

When they were starting out, it seemed that Packt took whatever author they could get to write about the hot tech topics of the moment and rushed those books to market. Over the years, the quality of their authors, review process, and books seems to have improved. I know for a fact that Tampa-based iOS developer Craig Clayton has written some excellent books on iOS development for Packt — because I bought them all.

I decided to buy the bundle. I paid the recommended $25 for these reasons:

  • Some of the money goes to two good causes.
  • At $25 for 24 books, that’s less than $1.05 per book.
  • I’m at the point where I won’t even notice a “missing” $25.
  • I don’t consider it $25 spent, but $25 invested.

That last point requires a deeper explanation:

  • If at least a handful of these books are good and provide me with something that I can use at work, in my own programming projects, or in my articles, I will have collected a good return on my investment.
  • Even if most of them are bad, it will still be a worthwhile investment because the 25 books span a wide array of Python topics, and will give me a better idea of what I don’t know, and better still, what I don’t know I don’t know. I can then look for better sources of information.

As I go through each of these books, I’ll post my findings and opinions here.

How to order the bundle

Once again, Humble Bundle’s “Ultimate Python Bookshelf” bundle is available until Monday, April 26 at 2:00 p.m. EDT (UTC-4). If you wanted to learn Python, sharpen your Python skills, or expand your knowledge of where you can apply Python, this bundle is worth considering.

Categories
Hardware Music

Putting my ’90s synth — the Korg Wavestation A/D — back on active duty

The Korg Wavestation A/D

Front view of the Korg Wavestation A/D rackmount synthesizer
The best damned synth of 1991. Tap to view at full size.

Long before I became an accordion player, I was a synth player. Over the years, I’ve bought and then sold or given away a number of synths, but there’s one that I kept: A Korg Wavestation A/D.

The Korg’s Wavestation A/D is the rack-mount version of the Korg Wavestation EX keyboard synth, which in turn is a revised and expanded model of the original Korg Wavestation. The Wavestation series of synths set itself from the other synths of the era by using a technology called wave sequencing, which could be described as building sounds by pasting sequences of different waveforms together, in a way similar to George Martin’s cut-and-paste approach to the calliope sounds on the Beatles’ Being for the Benefit of Mr. Kite!.

I bought the Wavestation from my friend, Canadian TV/film composer Stephen Skratt, back in 1993, when I was playing keyboards in a band with my schoolmates at Crazy Go Nuts University

Joey deVilla as a university student circa 1992, on stage with the band “Volume”.
Me, circa 1992.

…and I’ve done other live gigs with it (that’s me in the pink wig)…

Stephen Skratt, Joey deVilla, and Karl Mohr jamming on keyboards in 1999.
Stephen Skratt, me, and Karl Mohr jamming on keyboards in 1999.

…and I’ve even used it for some multimedia software projects:

Opening screen of "Welcome to Echo Lake", a multimedia promo for Delrina's "Echo Lake" family album application.
My first software deliverable after graduating from University: A multimedia promo for family album software.

I’ve held onto it ever since, having taken it from Kingston to Toronto, then San Francisco during the dot-com bubble and back, and it’s now at my current home in Tampa.

Simply put, the Wavestation is a beautiful-sounding synth, and even 30 years later, it still sounds great. If you’d like to hear what it sounds like, check out this video by Espen “I am the 80s” Kraft:

Bringing the Wavestation back to active duty

One of my plans for this year is to create a series of videos covering software development and other tech topics including security. Those videos will include music, and I thought that while there’s nothing wrong with licensing some music, why not write my own?

With that in mind, I pulled the Wavestation out of its closet, where it had been sitting, plugged in my small MIDI keyboard controller (the original version of the M-Audio Axiom 25), hooked it up to powered speakers, and turned it on:

The good news was that it still worked. The screen came to life, and pressing keys resulted in those rich Wavestation sounds:

LCD display of Korg Wavestation A/D displaying the name of the currently selected sound: “The Wave Song”.
Tap to view at full size.

The bad news, which I was expecting, was that while the built-in sounds in ROM remained, all three RAM banks which held the sounds that I had lovingly created so very long ago were gone. They had been replaced by copies of the ROM sounds. I no longer had a synth with 200 sounds (or in Wavestation parlance, “performances”, or in general synth terms, “patches”) — I had four identical banks of 50 sounds:

Page 4 from the “Korg Wavestation A/D Performance Notes” manual, which shows the 50 “performances” (synth patches) in ROM.
Page 4 from the Korg Wavestation A/D Performance Notes manual. Tap to view at full size.

I suspected that the battery that maintained the contents of the Wavestation’s RAM had died long ago. I confirmed this theory by tweaking the settings for one of the sounds in RAM, turning the synth off and back on again, then checking my edited sound. It had reverted to a copy of the ROM sound on which it was based.

I’ve done RAM battery replacements on numerous devices over the years, so I felt comfortable with going inside the Wavestation to see how big a chore replacing the battery would be.

The first step was to pop the top panel from the Wavestation. It’s a pretty simple process where you remove six screws — two on each side, and two on the back. Here’s what the inside looks like, as viewed from the front panel:

Korg Wavestation A/D with the top panel removed, as viewed from the front panel.
Tap to view at full size.

Here’s what it looks like from above:

Korg Wavestation A/D with the top panel removed, as viewed from directly overhead.
Tap to view at full size.

If you’ve ever had to replace the battery of an early- to mid-1980s synthesizer with battery-backed memory, you’ve probably dealt with the annoyance of that battery being soldered in. This was probably a cost-cutting measure (compared to today’s prices, synths in the ’80s were quite expensive), and manufacturers probably believed that we’d all upgrade to later models long before those batteries died.

I found a pleasant surprise waiting for me on the Wavestation’s main printed circuit board:

Korg Wavestation A/D with the top panel removed, as viewed from directly overhead, with the battery clip pointed out: “OMG! A proper battery clip!”
Tap to view at full size.

It was a proper battery clip, and in it, a battery that I had in plentiful supply in my tool closet: The ever-lovin’ CR2032 3-volt battery, which powers all sorts of things, including the CMOS RAM on ThinkPads, which I covered in an earlier article.

Close-up of Korg Wavestation A/D main circuit board, with battery clip in center.
Tap to view at full size.

The clip makes it easy to swap out the battery. Pressing against the spring pops the battery out:

Close-up of Korg Wavestation A/D main circuit board, with battery clip in center and battery popped out.
Tap to view at full size.

With the battery replaced, I put the top back on the Wavestation, powered it up, changed the name of one of the sounds in RAM, and powered down and unplugged the Wavestation. I plugged it back in and powered it up, and yes, the change remained in RAM!

LCD display of Korg Wavestation A/D displaying the name of the currently selected sound with its updated name: “IChangedTheName”.
Tap to view at full size.

In case you were wondering what the Wavestation sounds like, here’s a sample:

This recording isn’t of me playing a tune, but just holding down one or more keys. It shows the sort of complex sounds that the Wavestation can make.

Next step: Restore those factory RAM sounds

Even with a new battery, I still have 3 banks of 50 sounds that each are a copy of the 50 sounds in ROM. I’d like to start off with a straight-out-of-the-box 1991 experience and get those factory RAM sounds back. In order to do that, I’ll need a couple of things:

  • The sound data, which thankfully has been preserved by Wavestation enthusiasts and can easily be found online, and
  • A USB to 5-pin DIN MIDI interface to move that data from a computer to the Wavestation:LiDiVi USB-MIDI interface.
  • The SysEx Librarian macOS application to transfer the sound data to Wavestation.

I’ll cover this process in an upcoming post.

Categories
Current Events Tampa Bay

What’s happening in the Tampa Bay tech/entrepreneur/nerd scene (Week of Monday, April 19, 2021)

Here’s your list of tech, entrepreneur, and nerd events for Tampa Bay and surrounding areas for the week of Monday, April 19 through Sunday, April 25, 2021.

This is a weekly service from Tampa Bay’s tech blog, Global Nerdy! For the past four years, I’ve been compiling a list of tech, entrepreneur, and nerd events happening in Tampa Bat and surrounding areas. There’s a lot going on in our scene here in “The Other Bay Area, on the Other West Coast”!

By “Tampa Bay and surrounding areas”, this list covers events that originate or are aimed at the area within 100 miles of the Port of Tampa. At the very least, that includes the cities of Tampa, St. Petersburg, and Clearwater, but as far north as Ocala, as far south as Fort Myers, and includes Orlando and its surrounding cities.

Yes, many of us have had their first (and even second!) vaccines, but we’re not at the point where it’s advisable to return to pre-pandemic-style in-person events. It will happen soon, but in the meantime, I’m restricting this list to online events. In the age of broadband internet, smartphones, and social media, it’s not that hard. Stay home, stay safe, stay connected, and #MakeItTampaBay!

This week’s events

Monday, April 19

Tuesday, April 20

Wednesday, April 21

Thursday, April 22

Friday, April 23

Saturday, April 24

Sunday, April 25

Do you have any events or announcements that you’d like to see on this list?

Let me know at joey@joeydevilla.com!

Join the mailing list!

If you’d like to get this list in your email inbox every week, enter your email address below. You’ll only be emailed once a week, and the email will contain this list, plus links to any interesting news, upcoming events, and tech articles.

Join the Tampa Bay Tech Events list and always be informed of what’s coming up in Tampa Bay!


Categories
Current Events Programming Tampa Bay

I’m giving away my Python tricks at “Women Who Code Tampa” next month

Next month, on May 12th from 9:00 to 10:00 a.m. Eastern, I’m going to facilitate an online “Coffee and Code” session with the Women Who Code Tampa meetup, and according to the event description, I’ll be talking about Python.

But it’ll be a little bit more than just Python. It’ll be about using Python to automate certain tasks and assist you in others.

You can learn a lot about a programming language from the coding projects featured in tutorials, but sometimes, that problems tackled in those projects can seem as if they don’t apply to the the kinds of problems that you’d like to tackle with code.

In the upcoming “Coffee and Code”, I’m going to show you how I use Python and Jupyter Notebooks to automate certain tasks to give me more time during the day and make those tasks less error-prone.

Consider the list of Tampa Bay tech, entrepreneur, and nerd events that I publish every week (and its companion mailing list). I started publishing a few years ago, and in the beginning, I created it manually, copying and pasting text and links from Meetup.com and other places.

In the beginning, there weren’t that many events in the area, and putting the list together would take about an hour. As Tampa Bay’s tech scene grew bigger, more events came up, and creating the list grew into a task that could easily take up two or three hours — sometimes even longer.

That’s when I decided to create a couple of Python scripts to speed up the process. I’ll show you how I put those scripts together, and even give you to the code so that you can tinker with it and create your own tools to automate your life and make it easier.

That’s my plan — to show you how I think when I’m trying to use Python to automate processes and solve problems in my everyday life and work, and give you concrete code examples that you can use, modify, experiment with, and learn from!

Join me at the Women Who Code Tampa meetup on Thursday, May 12 at 9:00 EDT and see how you can use Python as an everyday assistant!

Categories
Career

Auth0 is looking for a developer advocate!

Can you answer “yes” to all these questions?

  • Are you looking for a new job?
  • Would you like to work with me?
  • Do you have programming skills, particularly with back-end .NET or Java?
  • Can you write technical and marketing articles well?
  • Can you deliver technical presentations to an audience well?
  • Are you based in the U.S. or Canada?
  • Can you work remotely with a global team?

Were you able to answer all the questions above with a definite “yes”? If so, you might be the very person we need to fill the role of Senior Developer Advocate at Auth0!

Remind me again — what does Auth0 do?

Every month, Auth0 processes 4.5 billion login transactions.

I’ll let this video — which is only 1 minute and 33 seconds long — explain in a little more detail:

 

Simply put, we are in the business of digital identity. In a heavily-networked world with processing power everywhere, knowing who every user is and what they’re allowed to do on a given system becomes fundamentally important.

This is a hybrid role

In this role, you would split your time between two major categories of activity:

  1. Developer relations: Actively reaching out to developers to educate them about identity in general and Auth0 in particular through speaking at events, appearing in videos and podcasts, creating tutorials and other training material, answering questions in forums, and generally being Auth0’s representative to the developer community and the developer community’s representative to Auth0.
  2. Developer content: Creating, curating, and editing content for developers (primarily written, but we’re expanding into audio, video, and whatever new medium comes up) on the Auth0 blog, which is in one of the top 1000 most-accessed sites on the internet.

You would be part of the Developer Marketing group, which in turn is part of the Marketing department.

What’s the team like?

Creative Commons photo by “Wonder woman0731”. Tap to view the source.

This is a high-performance team that does publicly visible technical work for a high-profile unicorn (as in “privately held startup company with a valuation of $1 billion or more”). It means that each member not only has to excel individually, but also that we truly shine we we combine our skills to produce results. Even though we’re spread over Europe, North and South America, and Australia, we stay in close contact, communicate regularly, and deliver work consistently and reliably.

It’s also a high-trust team. We listen to each other, help each other out, hand out the high-fives freely when one of us succeeds, and the condolences and offers of assistance when one of us doesn’t. We have each other’s backs.

Simply put, it’s a “two beers and a puppy” team.

For each and every person on the team, I would answer “yes” to both these questions:

  1. Would I have two beers with this person?
  2. Would I allow this person to look after my puppy over a weekend?

What’s it like to work there?

It’s great. In spite of rapid growth over the past three years, we’ve taken great care to maintain their culture, philosophy and “feel”.

Auth0’s works hard at maintaining three key values:

  1. One team, one score: Yes, what each person accomplishes on their own is important, but the really big thing is when the entire team succeeds. We celebrate both. This isn’t a “not my circus; not my monkeys” kind of place.
  2. N + 1 > N: We’re always trying to get to n + 1 and make improvements — to ourselves, our teams, the way we do things, and the services we provide. This isn’t a place for passive bystanders.
  3. The final value is my personal favorite: We give a shit. these four words speak volumes about the work environment at Auth0, including the fact that we care deeply about the work we do and how we get it done, and that we’re not stiff and overly corporate. This isn’t a place for an IDGAF attitude.

As an employee, you’ll get good work equipment and swag…

…and we’ll cover some of the costs for improving your setup with their home office expense and reimbursement policy, which I used to upgrade to a standing desk and ergonomic chair:

Also:

  • You’ll be paid well and get good benefits.
  • There’s actual work-life balance.
  • The vacation/paid time off policy is: no minimum or maximum number of vacation days, and you’re generally encouraged to take 3 weeks off per year in addition to holidays.
  • You may want to research recent business news for recent announcements, say around the first few days of March, and factor it into your decision to join.

What’s the interview process like?

Luckily for you, there are a number of articles on exactly this topic:

Okay, I’m sold. How do I apply?

Drop me a line and let’s start a conversation!

Categories
Current Events Tampa Bay

Interesting Tampa Bay meetups this week, part 1

Here’s a selection of Tampa Bay meetups happening today and tomorrow. To see this week’s meetups, see What’s happening in the Tampa Bay tech/entrepreneur/nerd scene (Week of Monday, April 12, 2021).

Python tutorial (Monday, 7:00 p.m.)

Tonight at 7:00 p.m., the Tampa Cyber Security Awareness Meetup Group will host a Python tutorial. If you’ve been putting off learning it, this is your chance to get started.

🌐 Meetup: Tampa Cyber Security Awareness Meetup Group — Python tutorial

12 things you may be doing wrong in your job search (Tuesday, 10:00 a.m.)

Tomorrow at 10:00 AM (not PM — the info on the Meetup page is wrong), Computer Coach will host the 12 Things You May Be Doing Wrong in Your Job Search workshop, where they’ll cover a dozen common mistakes that people make when looking for work — and how to correct them.

🌐 Meetup: Tampa Bay Tech Career Advice Forum — 12 Things You May Be Doing Wrong in Your Job Search

Introduction to identity for developers (Tuesday, 7:00 p.m.)

Tomorrow at 7:00 PM, the St. Pete .NET Meetup will present Introduction to Identity for developers with Christos Matskas, which will cover implementing authentication and authorization for your applications using the Microsoft Identity platform.

🌐 Meetup: St. Pete .NET Meetup — Introduction to Identity for developers with Christos Matskas

Categories
Current Events Tampa Bay

What’s happening in the Tampa Bay tech/entrepreneur/nerd scene (Week of Monday, April 12, 2021)

Here’s your list of tech, entrepreneur, and nerd events for Tampa Bay and surrounding areas for the week of Monday, April 12 through Sunday, April 18, 2021.

This is a weekly service from Tampa Bay’s tech blog, Global Nerdy! For the past four years, I’ve been compiling a list of tech, entrepreneur, and nerd events happening in Tampa Bat and surrounding areas. There’s a lot going on in our scene here in “The Other Bay Area, on the Other West Coast”!

By “Tampa Bay and surrounding areas”, this list covers events that originate or are aimed at the area within 100 miles of the Port of Tampa. At the very least, that includes the cities of Tampa, St. Petersburg, and Clearwater, but as far north as Ocala, as far south as Fort Myers, and includes Orlando and its surrounding cities.

For the time being, I’m restricting this list to online events. We’re still deep in a pandemic, and the way out is to stop the spread, however we can. In the age of broadband internet, smartphones, and social media, it’s not that hard. Stay home, stay safe, stay connected, and #MakeItTampaBay!

This week’s events

Monday, April 12

Tuesday, April 13

Wednesday, April 14

Thursday, April 15

Friday, April 16

Saturday, April 17

Sunday, April 18

Do you have any events or announcements that you’d like to see on this list?

Let me know at joey@joeydevilla.com!

Join the mailing list!

If you’d like to get this list in your email inbox every week, enter your email address below. You’ll only be emailed once a week, and the email will contain this list, plus links to any interesting news, upcoming events, and tech articles.

Join the Tampa Bay Tech Events list and always be informed of what’s coming up in Tampa Bay!