Here’s a new regular feature on Global Nerdy: 3 things, in which I’ll take a programming or technology topic and post three things that I found of interest on that topic. Today’s topic is a hot one: data science, which often goes hand in hand with Python.

The best data science course on the internet, according to someone who’s created an online master’s in data science

Visualization of data as interconnected nodes of varying sizes.

In the process of creating his own data science master’s program based on online resources, Udacity content developer David Venturi created a review-driven guide that recommends the best courses for each subject within data science, including:

And now, he’s got an article with a near-irresistible title (well, it’s near-irresistible if you’re the sort of person who reads this blog): I ranked every Intro to Data Science course on the internet, based on thousands of data points.

I’ll spare you the suspense: the top-ranked course in his list is Kirill Eremenko’s Udemy course, Data Science A-Z™: Real-Life Data Science Exercises Included.

I like to think of Eremenko as the Tim Ferriss of data science; both bill themselves as lifestyle entrepreneurs and have an empirical approach. If his name sounds familiar, you may have heard of his site, SuperDataScience, or his podcast, SuperDataScience Careers Podcast, or his set of Udemy courses related to data and statistics.

Gauge Donald Trump’s mood by using Python to do sentiment analysis on his tweets

Photo of Donald Trump on his smartphone: "Learn sentiment analysis in Python with the help of Donald Trump"

If you’ve been meaning to get started with Python and text analysis, here’s a fun way to do it: performing textual analysis on the tweets of the world’s first internet-troll-turned-head-of-state, as shown in this article, Sentiment analysis on Trump’s tweets using Python.

You’ll use:

  • Tweepy to access the Twitter API and fetch Donald Trump’s tweets
  • pandas to perform data analysis on those tweets
  • NumPy, matplotlib, and seaborn to perform statistical analysis and create visualizations
  • TextBlob to do sentiment analysis

To do this exercise, it’s strongly recommended that you use the Anaconda distribution of Python, as it comes will all sorts of useful tools specifically for data science.

Python podcasts

Headphones.

And finally, if you want to immerse yourself in Python while driving, walking, at the gym, or while away from the computer, you’ll want to check out Dan Bader’s Ultimate List of Python Podcasts.

{ 0 comments }

Every week (okay, with the exception of last week, thanks to one Hurricane Irma), I compile a list of events for developers, technologists, and tech entrepreneurs in and around the Tampa Bay area. We’ve got a lot of events going on this week, and here they are!

Do you have an tech or entrepreneurial event in or around the Tampa Bay area that you’d like to see listed here? Drop me a line about it at joey@globalnerdy.com!

Monday, September 18

Tuesday, September 19

1776 Challenge Cup - A global competition for the world’s most promising startups tackling complex, regulated challenges to share their vision on a global stage, enbgage with industry leaders, and win grand prizes. Organized in conjunction with Tampa Bay WaVE - Tuesday, September 19 @ 6 p.m. - Tampa Theater.

Ybor Elixir - Intro to Dializer - Tuesday, September 19 @ 6:30 p.m. - KForce

Wednesday, September 20

Thursday, September 21

Friday, September 22

Saturday, September 23

Sunday, September 24

{ 0 comments }

Moto G4 Android phone displaying its FM Radio app. The screen shows that the radio is tuned to 107.3, and the readout below the frequency reads 'CANE - Hurricane Irma coverage.

A photo I took during Hurricane Irma, which shows my Android phone with the FM radio app on.

When Hurricane Irma closed in on the Tampa Bay area Sunday evening, the power went out at around 7:30, and soon afterward, cellular service became spotty and then disappeared entirely. However, we weren’t cut off from information about Irma because we fell back on a 1930s technology, FM radio, which is built into every smartphone, and accessible on many Android phones (including mine).

In the age of the smartphone, you might think your Android or iPhone can replace a radio receiver as a lifeline during a disaster. After all, while a radio receiver is audio-only and one-way, your smartphone can both send and receive text, audio, picture, video, and location information — but only if the cellular towers nearby are up and running. If the nearby tower is damaged, loses power, or gets overloaded, you’ll be cut off and left with the dreaded “No Service” indicator on your phone.

Consult just about any disaster preparation guide for a checklist of “must-haves”, and one of the items on that checklist will be a battery-powered radio. When phone and internet service fails, you can fall back on radio as long as you have batteries. (Better still, if you have a radio with a hand-crank generator, you don’t even need batteries.)

We have a nearly century-long tradition of radio stations providing vital information during disasters of all kinds. In the case of Irma, they did one better and teamed up with TV newsrooms. During the storm, many radio stations in the Tampa area teamed up with TV stations to provide continuous coverage of and information about the storm, such as where it was, how quickly and in which direction it was moving, and what to do. It was a valuable resource for many people, and it may have even saved a few lives.

You may think that you don’t own a portable FM radio, but chances are that you do. It’s just hidden away in your smartphone.

Just about every mobile phone maker — even the big ones who manufacture their own processor and graphics chips, such as Apple and Samsung — gets their cellular modem chipsets from a single manufacturer: Qualcomm. In fact, Qualcomm pretty much has a monopoly on these chipsets, which in addition to sending and receiving cellular signals, have an FM receiver baked in. You wouldn’t know it in the U.S., as fewer than half the smartphones have the FM receiver enabled, and they’re all Androids.

My Android phone is a Moto G4, and in addition to having an enabled FM receiver, it also comes “out of the box” with the FM Radio app, which simply provides a user interface for the FM radio capability. When the power went out in our part of Tampa on Sunday at around 7:30 p.m. and the cell service disappeared shortly after, I fired up the FM Radio app and we had updates on the storm’s progress all night long. In fact, I also used the phone’s FM radio and all day the next day — and there was still battery power to spare and the end. That’s because FM radio uses considerably less power than just about any smartphone function (and it uses no data at all!).

My iPhone doesn’t expose its FM radio capability, and it was useless as a source of updates until the cellular connectivity improved the next day, well after the storm had passed. I can’t say for certain, but I’ll just blame Apple designer Jony Ive, who’s never met a much-loved traditional feature that he didn’t like to remove. I get the feeling that FM radio is too distastefully old school to include as an iPhone capability, even though it’s already there.

While I experienced the usefulness of FM radio in smartphones during an emergency firsthand for the first time during Irma, it’s been clear to broadcasters and public safety officials — FEMA (the Federal Emergency Management Agency) included (see the video above) — that there are great benefits to unleashing this capability. The National Association of Broadcasters (NAB) has been lobbying to require the FM radio capability to be enabled in smartphones, and even Ajit Pai, chairman of the Federal Communications Commission (FCC) has been advocating for this (but he won’t go beyond advocacy). At an NAB event in February, he said:

“It seems odd that every day we hear about a new smartphone app that lets you do something innovative, yet these modern-day mobile miracles don’t enable a key function offered by a 1982 Sony Walkman.”

In Mexico, where there’s a strong radio culture (and a rise in non-commercial and community radio over the past decade), the Federal Telecommunications Institute (CIRT) approved a new rule in April requiring all smartphone manufacturers to enable the FM receiver. CIRT’s rationale was that in emergencies and disasters, having the FM capability would make it possible for people to get alerts and vital information when cellular networks failed. Mexico is the first country to pass such a law, and it’s hoped that other countries will follow suit.

Find out more

The go-to place for the movement to make the FM radio capability that’s already in our phones, waiting to be unleashed, is FreeRadioOnMyPhone.org. It has the latest info on the movement to enable FM radio on smartphones, including:

  • How to get FM radio working on your Android phone
  • How to contact Apple to ask them to enable FM radio listening on their phones
  • How to contact the FCC and ask them to require FM radio be made available on phones
  • The latest new about the movement

You may also find these articles of interest:

And finally, an article that needs to be pointed out because it’s dead wrong (and unsurprisingly, published by 2010-era Business Insider, from the time they were almost stealing content): Mandatory FM Radio: A Dumb Idea For Smart Phones, in which its clueless author says that it’s just a move to prop up the dying terrestrial radio industry.

This article also appears in The Adventures of Accordion Guy in the 21st Century.

{ 0 comments }

Here’s a four-minute video where Trey Steinhoff, one of the people behind the recent Hack Hospitality hackathon in St. Pete, talks to me about Sourcetoad’s involvement with the event.

Hack Hospitality brought together two groups that normally don’t overlap — techies and the hospitality industry, both from the Tampa Bay area — with the purpose of coming up with applications to solve problems that the hospitality industry faces.

Hack Hospitality logo.

In the video, we talk about:

  • Why Sourcetoad was involved with the hackathon. The short answer: Because hackathons are a key part of a healthy tech ecosystem, and a healthy tech ecosystem is good for the company. Tampa Bay has the right elements to become the Austin of Florida, and we’re doing what we can to see that come about.
  • What Sourcetoad does. Sourcetoad is a software development shop that doesn’t just build software for clients. We take on “the hard stuff” — the highly networked, analytical, data-crunching, enterprisey, internet of things-y development work that confounds other software development organizations.
  • What Sourcetoad brought to the hackathon. Since one of our clients is a cruise line, we brought cruise ship-related datasets and challenges. The datasets contained all sorts of information specific to cruise ships, while our challenges were about real issues facing the cruise industry.
  • What was special about Hack Hospitality: It was a confluence of greatness — great organizers, a great space (The Station House and Iron Yard are by far the most beautiful and comfortable hackathon venues I’ve been in), the best catering at a Hackathon that I’ve experienced, thanks to Ciccio Restaurant Group (the people behind Green Lemon, Daily Eats, and other places) and Saltblock Hospitality Group, and of course, the enthusiastic Tampa Bay tech community.

{ 0 comments }

Tampa Bay Tech Events - Tuesday, Sept. 5 - Sunday, Sept. 10 -- View of Tampa Bay as seen through the large windows of the Dali Museum.

Every week, I compile a list of events for developers, technologists, and tech entrepreneurs in and around the Tampa Bay area. We’ve got a lot of events going on this week, and here they are!

Do you have an tech or entrepreneurial event in or around the Tampa Bay area that you’d like to see listed here? Drop me a line about it at joey@globalnerdy.com!

Tuesday, September 5

Wednesday, September 6

Thursday, September 7

Friday, September 8

Saturday, September 9

Sunday, September 10

 

{ 0 comments }

Photo: Betty Pierce speaks at the start of Women Who Code Tampa's 'All About Agile' meetup.

Betty Pierce speaks at the start of Women Who Code Tampa’s “All About Agile” meetup.
Click the photo to see it on full size.

Tuesday’s Women Who Code/Tampa Bay Agile meetup at AgileThought’s offices featured Julee Bellomo and Wendy Vigre introducing the concepts of agile software development to the audience of Tampa Bay’s most signed-up-for event of the evening.

Photo: Betty Pierce speaks at the start of Women Who Code Tampa's 'All About Agile' meetup.

Betty Pierce speaks at the start of Women Who Code Tampa’s “All About Agile” meetup.
Click the photo to see it on full size.

In the spirit of the Agile Manifesto’s “individuals and interactions over processes and tools” and “working software over comprehensive documentation” philosophies, Julee and Wendy wisely chose to demonstrate agile concepts by having attendees partake in activities rather than sit through a lecture.

Photo: Julee Bellomo presents at Women Who Code Tampa's 'All About Agile' meetup.

Julee Bellomo presents at Women Who Code Tampa’s ‘All About Agile’ meetup.
Photo by Anitra Pavka.

We went through a number of exercises, one of which had everyone in the group stand in a place in the room that signified where they stood on the four spectrums shown below:

On one side of the spectrum… …and of the other side:
Individuals and interactions Processes and tools
Working software Comprehensive documentation
Customer collaboration Contract negotiation
Responding to change Following a plan

Photo: Julee Bellomo presents at Women Who Code Tampa's 'All About Agile' meetup.

Julee Bellomo presents at Women Who Code Tampa’s ‘All About Agile’ meetup.
Photo by Anitra Pavka.

Those of you who are already familiar with the Agile Manifesto know that its creators favor the items on the left side over those on the right. It should be noted that they do believe that the items on the right side have value; it’s just that given each pair and the requirement to choose just one, they’d prefer the left one.

I was getting pizza during the point when we were asked to situate ourselves on the working software / comprehensive documentation spectrum, and the Hawaiian pizza  was near the comprehensive documentation extreme. When asked why I favored comprehensive documentation over working software, I replied “Because documentation doesn’t have to actually compile, or even work. You can often get away with simply submitting it.

(I will always gladly play devil’s advocate for pizza with pineapples on it.)

The big exercise of the evening is one that agile coaches love: the agile coin exercise. They love it because it demonstrates something that seems counterintuitive to a lot of people: you can get things done more quickly, efficiently, and well by:

  • Doing work in smaller units and delivering that work more often (instead of doing it in larger units, delivered less often), and
  • Letting the team work together to come up with their own ways to improve how the work is done.

We divided ourselves into groups of 9, and in each group, there were three roles:

  • 4 workers, whose job was to do the “work”.
  • 4 managers, one for each worker. Their job was to use a stopwatch to time how long it took their worker to do the “work”.
  • 1 HiPPO (HiPPO is short for “Highest Paid Person in the Organization”). Their job is to use a stopwatch to time how long it took for all the workers to do all the “work”.

In the game, the “work” was to flip 20 pennies to the opposite side. Each worker would do the “work”, then pass the pennies to the next worker, who would then do the same “work”, then pass the pennies to the next worker, and so on. The “work” would be completely done once all the workers in the group had done “work” on the pennies.

We had a number of iterations of the game:

  1. In the first iteration, each worker had to flip all 20 pennies before passing them to the next worker. This took most groups around 70 to 90 seconds.
  2. In the second iteration, each worker could flip 5 pennies, pass those flipped pennies to the next worker, flip the next 5, pass them to the next worker, and so on. This took most groups around 40 to 60 seconds, even though individual times grew slightly.
  3. In the final iteration, the groups were free to decide how the work would be distributed. Many adopted the approach of flipping 2 pennies at a time, then passing them to the next worker. Individual times grew slightly more, but most groups’ aggregate times dropped to about 30 to 40 seconds.

By the end of the exercise, you can see how breaking tasks into smaller units and allowing the team to devise their own optimizations boosts throughput. That’s the general idea behind agile processes, no matter what they are.

If you’d like to try the agile coin exercise, there are a number of descriptions online, including this one, which was followed up with an article about some variations on the exercise.

You may also be interested in Remotely Flipped, an online version of the exercise that you can play with remote friends (it runs on Heroku, so give it a little time to start up). For those of you who’d like to know more about its implementation, check out this article on the blog of Agility Feat, the people who made it; it was developed using PubNub, Clojure, and ClojureScript.

You use lots of these in many agile methodologies.

The meetup closed with a quick overview of Scrum and Kanban, as well as Julee’s assertion that there’s no such thing as “Scrumban” (a term people use for hybrids of the two). She says that’s just “Kanban done right”.

I’m going to leave the differences between Scrum and Kanban as an exercise for the reader, but I’ll post this graphic as a way to help you get started:

Table comparing Scrum and Kanban

{ 0 comments }

Tonight’s meetup

Graphic with Rosie the Riveter in front of a circuit board with the logos of Women Who Code Tampa Bay, Tampa Bay Agile, and AgileThought.

The most signed-up for gathering in the Tampa Bay tech scene tonight (60 sign-ups so far, Yours Truly included) is the special joint meetup for Women Who Code Tampa and Tampa Bay Agile, “All About Agile”, in which attendees will get an overview of “agile”, the popular shorthand for the practice known as agile software development.

Tonight’s meetup, which takes place at AgileThought’s offices (2502 North Rocky Point Drive, Tampa), will provide the answers to these questions:

  • What is agile? What is not agile?
  • How might agile change your job?
  • How might agile change your career?

Tonight’s speakers are:

  • Julee Bellomo: A consultant with AgileThought’s agile practice who specializes in product and portfolio management and product discovery workshops and help businesses prepare for agile transformations through leadership and enterprise coaching. She founded the Tampa Bay Product Owner group, and recently collaborated on the book Lean Agile Marketing: How to Become Agile and Deliver Marketing Success.
  • Wendy Vigre: An agile coach at AgileThought with a software engineering background who has led a wide variety of initiatives that vary from technical in nature, like code decoupling, to very business logic-driven, like state legislation. Her hands-on field experience includes product owner, scrum master, Kanban flow master and agile coach. She has worked in industries that range from healthcare to large accounting firms with teams that span from clinical to compliance.

Your handy pre-meetup briefing

You’ll probably get a quick summary of the event pictured in this photo:

Photo: Some of the people behind the Agile Manifesto working on the Manifesto on a set of whiteboards.

NEEEEEERRRRRRRDS!

That was taken sometime between February 11 and 13, 2001 at Snowbird Ski Resort in Utah, where 17 leading software development and engineering experts got together to hang out, ski, relax, and — because they were big ol’ capital-N Nerds — talk about what was wrong with the state of software development.

All of them were proponents of different methodologies that went by different names: extreme programming, Scrum, Crystal, Pragmatic Programming, and so on, but beneath all those different ways of building software was a common thread: addressing a need to get out from under heavyweight software development processes that crushed projects under bureaucracy and documentation, and which ultimately delivered applications that failed to meet customer and user needs.

What came out of that gathering became known as the Agile Manifesto, which lists these values:

They value this: Over this:
Individuals and interactions Processes and tools
Working software Comprehensive documentation
Customer collaboration Contract negotiation
Responding to change Following a plan

They also wrote: “while there is value in the items on the right, we value the items on the left more.”

The Agile Manifesto has 12 principles:

  1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
  3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  4. Business people and developers must work together daily throughout the project.
  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  7. Working software is the primary measure of progress.
  8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  9. Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity–the art of maximizing the amount of work not done–is essential.
  11. The best architectures, requirements, and designs emerge from self-organizing teams.
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

And finally, if you have 8 minutes to spare, give this video a watch — it’s a brief explanation of agile in action:

{ 1 comment }