Graduation!!!!

I graduated with Android Basics Nanodegree by Google and through Udacity on the 31st July 2018 – I think that the cut-off date was 20th August 2018 so I was only a few days ahead of schedule. Udacity extended the deadline by a few weeks because I think that there were still quite a few people who were going to miss it! After the extended deadline, the people who had still not completed were given a “preferential rate” in order to complete, which several people took advantage of.

My Certificate.

I was ever so proud as you might expect but then I started to think “now what do I do?” The tutors on the course suggested that we use our new found knowledge to adapt the projects that we had created throughout the course to fit the needs of local shops and businesses in our areas. For me it was a question of confidence and a search for ideas about how I was going to proceed. More about that next time….

The Inventory App.

This was the final project that I studied for and created on my Android Basics Nanodegree by Google and it was to be done in two parts. In the first part we were to focus on what happens behind the scenes – designing and implementing a simple database using SQLite; creating a table and then populating that table with new entries, modifying the entries and displaying the contents of the table to users. The practice app that we used in preparation for our project was an app to track pets in an animal centre in which we had to create a list of existing pets, and let the users add and edit the pets – names, weights, breed and so on. During the second part, the practice part was to build a user interface so that we could manipulate the database more easily.

The final project was to create our own Inventory app that would allow a store to keep track of it’s inventory. The brief was to:-

  • Be able to store information on a SQLite database
  • Integrate Android’s file system into that database
  • Present information from files and SQLite databases to users.
  • Be able to update information based on user input.
  • And create intents to other apps using stored information.
This is what the front page of the app looks like when the database is empty.

When the database is empty there is a message on the front of the app encouraging users to enter products into the database. On clicking the “kebab” menu in the top right hand corner there is an option to add sample data for testing but the usual way to add data to the database is to click on the green button on the bottom right of the page which takes you to:-

The “Add a product” page.

On the “Add a Product” page you can add relevant data about your product. On this page you can enter the product name, price, quantity with the additional function of making small adjustments with “+” and “-” buttons, the supplier name and the supplier telephone number which links via an intent to the telephoning intent. The app is based on the idea of a book, stationery and toy shop so there is a drop down list to select whether the product is a Book, a toy or a stationery item.

This is what the front page of the app looks like when the database is populated:-

The front page of the app when populated.

The type in bold shows the product name, below that is the price and below that is the number in stock. A sale is recorded by pressing the “Sale” button on the relevant item which reduces the stock number by one. If you click on the product instead, you can edit the details of the product in the case of inaccurate description, price or stock level. The “kebab” menu also allows a menu option to clear the whole database of entries. It was decided that we should only create a simple user interface because the emphasis was to create a usable database but I am sure that this app could be “prettied” and expanded to make it into of commercial value without much change to how it operates.

After I had submitted this project and tied up a few loose ends like making sure that I had been communicative enough on the Slack channels and Udacity blogs – they, quite rightly, put a lot of emphasis on community and communication – it had to wait for the verdict on my last project before graduation. We were also strongly encouraged to build our networks on LinkedIn and Facebook. I had been in LinkedIn and Facebook for some time before but my followers and the amount of people that I follow grew quite a bit as a result of this experience. I am a member of Udacity Graduate Alumni groups on LinkedIn, Facebook and Slack and it is useful to have people with a shared experience to converse with, support and receive support from.

Next time…. Graduation!!!

The Nanodegree Proper and the Musical Structure App

I had been accepted onto the Android Basics Nanodegree full scholarship and after wondering would I make the grade, I was finally relieved and excited.

The course continued with us going through the creation of “The Miwok App” – an app that was written to educate people about the language of the Miwok people – a group of native American people. The next project was to design an app to achieve a certain goal or purpose. We were going to create new activities, use explicit intents to link between activities in the app, use onClickListeners – written in Java this time – to add behaviour to to buttons, create our own custom class, looping through an ArrayList and populating a ListView or GridView with an ArrayAdapter.

The Miwok app “held our hand” through production of such an app and gave us the basis to create our own “masterpiece”. In addition to what was required with our project, the Miwok app also played .wav files of pronunciation of the Miwok words but that wasn’t required for our project.

I decided to create a Music Player App with a front page with a picture and several buttons leading to other activities – each was a genre of music – Rock, Pop, Classical, Disco and Country. Each activity had lists of music from that genre which was created from a list using ListView. Each other activity had buttons to move within the app to each other activity and to the home plus another button which displayed a “Playing Now” page. The purpose of the app was to practice Intents, ListView, Arrays(which made up the lists) and ArrayAdapter. The app didn’t actually play any music; that would be for another lesson some time in the future.

I was really quite pleased with the way that it turned out but to be honest, I look forward to a time when I can style an app to be a bit more visually appealing. I may well add some functionality to it at a later date too – such as actually linking the buttons to real music and actually getting my list/array form an API which is constantly updated. Maybe, some day….

Are you sitting comfortably…

As you may well have read in my “About” section, I was once a Registered Nurse and later, a Resuscitation trainer – this little factoid will come in useful once I get to the bit where I describe what I have been working on recently. Please bear with me. I had always taken photographs and thought that it would be a jolly wheeze if I was to retire early and make a living as a photographer. I have a photography blog which gives a fuller picture of the photography adventure (link on header to each page if you are interested – please visit at least once) but suffice to say, it didn’t bring the fame and fortune that I craved. During that time I started to play with Android photo editing apps on my phone after a very talented photographer called Gerry Coe came to the local camera club that I attended. He had won numerous awards for his photography and had moved on to win awards with his iPhone photography. I was hooked. I started to play with Snapseed, Picsart, PhotoLabPro, Prisma, and a whole lot more using my photographs and posting them on my Photo Instagram page*. My next thought was to see if I could find out how to write an Android photo app for myself. I mentioned this to a friend of mine one evening at the camera club and the following morning, he sent me a link to Google Garage where they were offering scholarships to study for one of four Google Nanodegrees.

  • Android Basics Nanodegree
  • Android (advanced) Nanodegree
  • Android Basics Web development Nanodegree
  • Android (advanced) Web development Nanodegree

At the age of 56 I decided to apply for the Android Basics Nanodegree; I did not have any previous experience of writing code, just a kid with a crazy dream!

I applied and was accepted. The course was run by Udacity and the first stage was “The Google Developer Challenge”

The scholarship was for three months and there were 20,000 selected across Europe for each of the two basic strands and 10,000 for each of the more advanced strands. I did well in the first phase and was given another scholarship to study for a further six months for the full Nanodegree. There were only 2000 people on each strand invited to continue and I was one of the fortunate ones.

There will be more about my journey through my Nanodegree with Udacity in my next post.

*I have two Instagram pages; a photography page (@paulcullenphoto) for which there is a link through my photography website and a new “Developer” page (@cullendevelopment) to which this website is linked.

I have a third site “uncorked bottle” (link under header on each page) if you are interested in my wine blog.