CLD202x SharePoint Basics for IT Professionals: Yes please

I was planning on posting this a few weeks ago when I signed up for this course, but I’ve only gotten around to it now. I am very pleased with the course offering by Microsoft on edX, and this course is no exception.

Over 2 years ago now, when our GIS team split into Enterprise and Desktop, I was introduced to SharePoint. I had left the City just before they made switch to using SharePoint libraries as storage space instead of My Documents, so I had only dabbled with it briefly (and from an end user perspective).

During the last 2 years, I have had to interact with it in multiple ways – setting up subsites, managing permissions, creating content (such as embedding YouTube playlists, storing geometry in lists, configuring spatial viewers), and generally whatever else came up.

I never received any formal training in it, and simply clicking around in SharePoint while trying to figure it out, as I am inclined to do with other technologies, does not really work. There’s a reason this site exists. This is why I am pleased that Microsoft thought to offer this MOOC – it’s clearly needed.

The notes are very detailed, and explained very nicely in text form. This makes it very easy for me to copy into OneNote, and highlight as needed. The concepts are explained in a way that I would never have gotten from our seasoned SharePoint dev. Not that he doesn’t want to explain – he has shown me so many things on SharePoint – but it’s often the little things that one does automatically that trips up newbies.

For example, one of our clients had recently started using ArcGIS full time after only using it for very basic data capture before. He asked me why ArcMap was complaining about the projection of two feature classes being different when they were both in the same projection. I pointed out that while they were both in LO19, the one projection’s name was “LO19”, while the other one was “Transverse_Mercator_19”. It shouldn’t make a difference, but it does. The central meridian might differ by 0.00001 or something.

Another example is when one runs the Append tool in an ArcMap session, with the target table opened in the map. The tool will complete successfully, but the newly added rows won’t appear in the table even if you click away to a different table. You have to close the table, then open it again to force a refresh. Most of my ArcMap woes are solved this way – closing off whatever I’m doing and trying it again, or forcibly ending the programme. This is something I know after dealing with ArcMap for over 8 years now. It’s the GIS equivalent of

ArcGIS has a seemingly endless amount of this type of issue, and if I were teaching a total n00b how to use it, I would never even think to mention these things, because dealing with them is a reflex now. From what I can tell, SharePoint is similar, except that it probably has even more of it. Nonetheless, I’m just happy that someone has taken the time to lay out the basics in this format.

Geodesign: Change Your World MOOC: I think I’ll keep my world the same for now.

I was so excited to see that Penn State was offering another MOOC this year, this time about geodesign. It’s been on my watchlist for the past few months, so when I got the email to announce that class was starting, I immediately checked it out.

After my last Penn State MOOC though, I was a bit more wary this time around. A cursory glance down the left pane showed me what I was hoping I would not find:Geodesign_PeerAssessments

I half-heartedly went through the course content after that, but I had already decided not to carry on. The peer assessment assignment is 40% of the grade for the course. I’ve mentioned here before that peer assessments in a MOOC are a dealbreaker for me. I learn best on my own. I enjoy working as part of a team, but on my own as part of a team.

This week I started with the two other modules I need to get into Hons. The one is about software engineering principles, while the other is about advanced database development using an old version of Oracle (why, Unisa, why). I’m quite excited about the SQL one, as it will give me more opportunities to flex my SQL muscles, and to get exposure to a different database platform (something other than SQL Server).

Basically, even if I wanted to do this MOOC now, I can’t. Best of luck to the Geodesign students, and hopefully with the next offering, they will relax the peer assessment requirement.

Getting into webapps and Paas:

After my nightmare with installing Ruby on Rails on Windows, I ended up on Heroku. This was my first experience with PaaS, so I was a bit foggy on the details about how everything worked.

I poked around on Heroku a bit, but couldn’t really understand what was going on, even after reading their detailed Getting Started tutorial, so I decided to check out the recommendation of the Web Apps MOOC lecturer,

I found getting started on Nitrous to be a much easier experience. Following their steps, I set up a Ruby box, and within 10 minutes I was starting my first assignment from the MOOC. I also successfully linked that box with my BitBucket account so I could submit the assignments.

As I only have a free account, most of my credits were used up on the Ruby box. The box also shuts down after a period of inactivity, so I have to start it up again when I log in. This was also before they changed their structure, so I’m still on Nitrous Lite, while new users are redirected to Nitrous Pro.

Using gave me a kickstart to learning how to use Git properly, and how to code in the cloud. I learnt a lot about these concepts during the webapps MOOC, and will be sharing some more about it soon.

I also ended up returning to Heroku (I had better luck with the Python tut), as well as dabbling with Google App Engine, but I will get into that a bit later.

DAT201x: Final recap

I really enjoyed this MOOC. I even considered upgrading to a verified certificate, but that was before I realised that after conversion, it would cost me ~ R1100. I might as well take the actual exam (~R747) and use my UNISA school discount to pay ~R422.

Overall, I think it was a very comprehensive basic -> intermediate course on using SQL with SQL Server 2012. It was great for me to able to apply some of the theory I’ve learnt over the years, and to understand more about the technology which underpins our SDE.

I hope that Microsoft will be offering more courses in this format in the future, as I find it a much better environment for learning than MVA. I also like how they’ve tied this course into convincing people to write the official exams. I’m definitely considering it seriously (after studying. A lot).

Now that my schoolwork is done for the moment, I have about two months to get a couple of MOOCs in. Also, I should look at ESRI Certification again, as it is a stormcloud hanging over my head, especially now that my PLATO application is complete.

EX101x: Week 1 and 2 recap

I haven’t been as consistent with these recaps as I would like to be, but as I get closer to my first exam in 5 years, I’ve been cooling it on the MOOC front. As a result, I’m ending up completing two weeks in one most of the time now.

Week 1 focussed on using conditional functions like IF, COUNTIF, SUMIF etc. Week 2 was about using lookup and search functions like VLOOKUP, INDEX and MATCH. A few things which I did for the first time:

  1. Import data into a sheet from a web feed: I’ve never had a need to use this function, and I’m not sure if I have the need now, but it’s good to know.
  2. Using a time criteria for COUNTIF: So useful, and I can’t believe that in my 15 years of Excel usage, I have never needed to do something like this.
  3. A use case for setting the range_lookup for VLOOKUP as TRUE: I use VLOOKUP a lot (or used to, before I switched to doing most of my analysis in Python). I also use a lot of nested IF statements for ranges of items, and some combination of INDEX/MATCH.

    At school, we were always taught “FALSE with VLOOKUP” because every scenario always required exact matches. I never though to question that, nor did I have the need to, because with all the GIS data that needs pre-processing, we always require exact matches.

    Now that I know that by creating a lookup table and using TRUE, VLOOKUP can be used to match value ranges the same way I would use a nested IF statement, I can see how that would really have helped me out on a few projects a while ago.

A big part of why I also focussed on learning more Python wherever I could was because I was tired of exiting ArcGIS, manipulating data in Excel, then bringing it back into ArcGIS. With Python, I could do all the data manipulation I wanted right there, and then take it into Excel for non-GIS people.

I’m also really pleased that I can still learn things in Excel to increase my productivity. One becomes so accustomed to doing things a certain way, that if that method is fast enough, one tends not to look for a replacement.

Installing Ruby on Rails on Windows

What a nightmare. I didn’t quite believe the lecturer’s notes on the Web Apps MOOC when he said that it may be a bit of pain installing Rails on Windows, and that we should follow this other guy’s tut on how to do it.

I think the problem with the installation process (at least for me) is that everything appears to be working fine, until it isn’t fine. I got as far as getting Ruby installed, Rails and other gems loaded up. The first mistake I made was not completing the installation process (I was using my VM). I then decided it’s probably not a good idea to mess up my pristine VM, especially if Rails was going to mess up my Python environment, so I decided to install it on my tablet instead.

This install went smoother, until I attempted to create a test app. While trying to install the required gems for the app, it broke in a very specific way. After following the steps in the highest rated answer on that page, I tackled my next error.

Once it was evident that the setup clearly wasn’t working, I went nuclear and did a clean uninstall of RoR, and started again. As expected, the installation failed again, in the same manner.

At this point I gave up and jumped to the lecturer’s 3rd suggestion: Using To be continued!

MOOCs: The journey continues

I’ve signed up for a number of MOOCs over the last 2 years, some for interest sake and some with the intent of completing for a certificate. So far I have successfully completed five:

  1. MIT: Introduction to Computer Science and Programming (edX)
  2. MIT: Introduction to Computational Thinking and Data Science (edX verified)
  3. MIT: The Analytics Edge (edX)
  4. ESRI: Going Places with Spatial Analysis (Udemy)
  5. University of Minnesota: From GPS and Google Maps to Spatial Computing (Coursera)

I also signed up for (but did not complete):

  1. Stanford: Algorithms: Design and Analysis, Part 1 (Coursera)
  2. Stanford: Introduction to Logic (Coursera)
  3. University of Maryland: Software Security (Coursera)
  4. Stanford: GPS: An Introduction to Satellite Navigation, with an interactive Worldwide Laboratory using Smartphones (Coursera)
  5. Delft University of Technology: Responsible Innovation (edX)
  6. Delft University of Technology: Solving Complex Problems (edX)

The only one I am bothered about not completing is Stanford’s GPS lab. I just forgot to go write the exam. I’ve been using MyStudyLife to keep track of all the due dates for the various courses (because I didn’t want a dozen different course calendars), but I stopped updating that and everything just snowballed and then it was time for Vacay 2014.

I’ll probably retake the GPS course, and will be looking for MOOCs focussing on web programming and networks this year. I may have some other news on the education front as well (hopefully), so this is all I want to take on for now.