Categories
Advocacy teaching

Bootcamp

I’ve never been to bootcamp. I wasn’t even in the Scouts growing up. So, unlike most of the posts on this site, which features a story about something I did or was involved in, this is largely my views on a question.

Here’s the question, “I’m a twentysomething-year-old with regular computing schools, I have a non-IT career, but want to make a switch, what should I do?”

A few preliminaries:

  • I’m not trying to convince you to do IT
  • You’re willing and able to devote time to make a switch
  • Everything following this is a suggestion mostly based on opinion, with a dash of experience

I heard that question and immediately thought, “Not a degree”. It’s not that degrees are bad, or that I’m in the anti-degree movement. I think degrees have their place, but for adults, who are probably in a clearer place with respect to their needs, and who don’t need too much handholding, a degree feels like the wrong approach. Note, feels. Some might tell you go ahead and do a degree of some sort, and that’s OK, if you have the inclination and time (and money), go ahead.

So, if not degree, what?

There are many voices online about why to do an alternative to a degree when considering a career switch. I’m taking this from one of two starting points:

  1. You’ve advanced to some degree in a non-IT career, and you would love to add some form of IT as seasoning on top of that. For example, you’ve been in banking and finance, and have been hearing about the wonders that can be done if you get a handle on data science.
  2. OR, you hate what you currently do. Every day is a slog, and though it pays the bills, which is important, you’d love to get out and do something else. The something else you’ve settled on, is something in IT.

If you’re in camp 1, then I think it’s good to look first for people who have already made the switch. Depending on your industry, they’re easy to find, they might have blogs, or tweets. They might be in your office, or across the world. You might know them from the books they’ve written, or you use something they’ve created, like a tool to get work done.

Find a few of these people, and create a matrix that tracks how their career has evolved. See what they studied and when, look at the order of growth for them. Did they take a few courses? Did they blog about their journey? Did they join any groups? You’re not trying to copy their path necessarily, but it would be good to open your eyes to the kinds of pathways you can explore.

People in camp 1 tend to want to use the aspects of IT they like as ways to get their overall life goals accomplished. They don’t see programming or data science or some aspect of development as their new passion, instead as a way to further their existing skills in their current field. That sort of person is looking for a bridge between what they know and what they need to know.

In the past, they might have done a masters to fill that need, but now, it might be a menu of courses that closely relate to their existing field – the specific list should be clear if they did the work of selecting a few people to study and glean good ideas from.

Now, if you’re in camp 2… that’s something else. You’re starting over or maybe even picking back up from a long time ago. Your first step doesn’t have to be daunting. As opposed to looking at people, you might want to look at areas in IT. Even the term “Information Technology” is a bit long in the tooth. But it still tracks. Look at broad areas, and do some YouTube surfing for talks that describe how those areas work in real life. It might be on the design side, or security, or something called back-end. You’re trying to get a sense of why the area is important and whether you feel a broad pull to dig at it more.

IT is hard. Maybe you haven’t made any real investment yet, so let’s get that out of the way. But I hear that any career that you want to do really well at is hard. You generally have to figure out if the hardness of an area lines up well with what you want to spend your time doing.

Once you find a few areas you dig, there are quite a few providers online of good standing that can provide you with courses or rather collections of courses to get you a sense of awareness of what working in that area can be like. I don’t know of any course-list that will just give you everything to simply be a professional in your chosen area. What most courses should aim to do is make you conversant in the area you care about. That’s usually enough to help you “Google your way to success”.

Let’s say you chose software development. Googling, “bootcamp software development” will yield way too many results. It’s good to talk to working software engineers to help weed out some of the starting results. At first, my results of that query yielded this great article, essentially saying “be wary of bootcamps”. It’s good advice and paints a decent picture. Bootcamps aren’t a cure-all. But as I said, you’re probably working and don’t have the luxury of doing a full-time degree, but may be interested in getting into the field.

Since I use a site called “StackOverflow” a lot, I searched that network for some perspective. This was a good Q/A on the question of bootcamp vs something longer.

In both articles above, an important takeaway was that any education in software development is necessarily only a start, and it can take a while for the way (to paraphrase Mando) to even make sense.

Yet, using a decent bootcamp/starter experience to understand more of the field you’re trying to switch into as an adult is a good strategy. You have to keep your eyes open and trust the instinct you’ve developed, it will help you know when what you’re trying maybe isn’t working and when you need to switch things up.

I don’t have a lot of experience with actual providers, but I like what CodeNewbie has been doing in the space of getting new people into the field.

This whole post was a suggestion, filled with opinion. HTH.

Categories
Cloud teaching Uncategorized

Provisioning some test storage accounts for class

I wanted to create a few storage accounts for students in my class to complete an assignment featuring Event Sourcing and Material Views.

So, here’s what I did.

Download/install the latest azure command line interface (cli).
(While doing this, I realized I could have just used the cloud shell. I soldiered on with the dl)

Create a resource group to contain the accounts we’d need.

#Prior to doing this, ensure that user is logged in
# 'az login' works
#Then, if you have multiple subscriptions attached to account, select the appropriate one using:
# 'az account set –subscription <name or id>'
#command below:
az group create –name COMP6905A2Storage #name I used

Create the accounts and output the storage account keys
The command to make a single storage account is pretty straightforward:

#ensure logged in to azure
#ensure default subscription is desired one
az storage account create –name comp69052017a2test \ #test storage account
–resource-group COMP6905A2Storage \#test resource group
–location eastus –sku Standard_LRS \
–encryption blob

But I wanted to also output the keys and display them on a single line. The command to get the keys after the account is created is this:

az storage account keys list –account-name comp69052017a2test –resource-group COMP6905A2Storage

So, I used the jq program in bash to parse the json result and display both keys on a line. Thus, I created a script that would create the accounts and then output their storage account keys.
This is the script that produced the accounts and keys:

for number in {1..20}
do
account=comp69052017a2
account+=$number
az storage account create –name $account –resource-group COMP6905A2Storage –location eastus –sku Standard_LRS –encryption blob | jq ".name"
az storage account keys list –account-name $account –resource-group COMP6905A2Storage | jq '.[].value' | tr -s '\n' ','
done

Overall, the longest part of the exercise was dealing with the way the files were being saved in windows vs how they were being saved and read by bash. But the accounts were created and class can get on with assignment 2.

Categories
Cloud teaching

Exploring the differences between SaaS, PaaS and IaaS

In Cloud Technologies class today, we used both the course outline and the notes from MSFTImagine’s Github repo to talk through the differences in service offering.

I used the canonical service model responsibility chart to start the conversation off.

servicemodeldivisionofresponsibility
Service Model Division of Responsibility, via MSFTImagine on Github.

It’s fairly straightforward to talk to these divisions, of course. I often use it to drive home the NIST 2011 definition of cloud services. With emphasis on the service delivery models.

In today’s presentation, one of the things that jumped out at me was the slide that provided a distinction between SaaS Cloud Storage and IaaS.

distinctionbetweensaasandiaas
SaaS or IaaS, via MSFTImagine on Github.

Finally, when talking about the ever versatile Salesforce, and how its PaaS solution works out it reminded me of the Online Accommodation Student Information System (OASIS 🙂 ) that I had built when I was in undergrad.

I’d built OASIS as a commission for the Office of Student Advisory Services. It was a tool to help off-campus students more easily find accommodation. Prior to OASIS all the information was a notebook in an office. It was built before I learnt about the utility-based computing of cloud. I’m thinking about using that as the basis of an exploration of the architectural changes need to move an old service to the cloud.

Hopefully, I’ll be able to revisit it when we touch on Cloud Design Patterns.

Categories
Cloud teaching

Cloud Technologies – 2017. Ready, class 1

Started back with the UWI Cloud Technologies course today. This class was an Introduction to Cloud generally, with some conversation about the course outline and expectations for assignments.

We still in the process of confirming the course outline, so I’ll share that next week. But I used the slides from the technical resources provided by the Azure Computer Science module on cloud technology.

On my way to class I met up with Naresh who runs the UWI’s Department of Computing and Information Technology servers. He gave me a quick tour of their deployment. I’m looking forward to him sharing some stories from setting up that environment in our IaaS classes in a few weeks.

Recommended reading for today’s class is Consumption Economics: The New Rules of Tech