Saturday 22 February 2014

In this section of my blog I would like to point out some useful sites for any person with an interest in programming or web development. You might already know of these websites due to the popularity each site has gained respectively but nonetheless  I would like to give my feedback on using these sites and where I thought the site was particularly useful.

Tutorials Point:


The first site I will address is "Tutorials Point", I find myself coming back to this site over and over again if ever I feel in need of refreshing my knowledge in a particular area like remembering how to use a Where Clause in MySql, or the syntax for declaring an Array in Java for instance. 

The site is very easy to navigate, due to the simplistic layout of the website. Following the usual formula of a tab bar of the main subjects such as Java, MySql and HTML located at the top of the page for easy navigation. The left hand column is used for dissecting the main topics of the subject you have selected, listed from the basics to the more advanced topics in the selected subject. The simplistic layout gives a lot of functionality to users well versed with using the site. I can at this stage locate the information I need in a couple of seconds judging by how advanced I think the information I need is.





















As you can see from the image above the left column of the page is housed by individual topics of the current subject making it really easy to navigate to a particular section you wish to view. The structure of the information should also be credited as the web-master has ordered the information like chapters in a book, starting with an Overview of the subject and later moving on to the more advanced aspects of that subject. 

This brings me on to the actual information on display for the users, I believe each topic is broken down and described in enough detail but also in a way that won't leave a person shell-shocked or confused by the material they have read. In my opinion this is because the site balances the heavy information with useful and easy to understand examples. I remember having trouble grasping the concept of Polymorphism after a lecture but after looking through the examples on Tutorials Point I was a lot more comfortable with the concept. Some of the more advanced examples can be copied and pasted in to a  virtual machine so you can get a feel of what the code actual does, and can further modify it yourself.



Above is an example on how to use a Where Clause in SQL the tutorial gives detailed information on what the function does, the syntax of using the function and proceeds to give a detailed working example of what a Where Clause does and what you should see after inputting the query. I can't stress how important it is to have a good working example of the type of theory you are trying to explain, it is much easier to learn from working examples and trying these examples yourself over just reading the information and I credit Tutorials Point for having a balance between the both. 

I urge anyone that wants to learn something new or sharpen their knowledge on programming, web development or database management to give this site a look.

Here's the link provided again to save you scrolling up again.


Saturday 15 February 2014

Android Development Getting Started

My first official blog in developing software will take the time to provide readers with the necessary software that will be used to create apps for Android development. Though I am more versed in Windows Phone development as I have only started development for Android a few weeks ago, I feel more people would prefer to start with Android devices. Android devices have become the most sold devices in the phone and tablet market even surpassing rivals Apple, there are a number of reasons behind this which I will go into at a later date but for the moment we will focus on how you can start creating you're own Android applications.

The software I have grown to use throughout the duration of this course is Eclipse, this is an open source piece of software so anyone can download, install and create their first application in just a few hours. Eclipse does not originally come with the necessary tools to create Android apps but there is an open source bundle which comes with an Android Emulator (more on this later) and the ability to create Android project. If you already have Eclipse installed you can download the necessary software for Android development but I found this to be awkward at times so I suggest deleting and downloading the bundle which includes Eclipse.

Just follow the link provided and click the download button:
http://developer.android.com/sdk/index.html?utm_source=weibolife






















Note: Pay close attention to the System Requirements, anything from windows XP to windows 8/8.1 should not be a problem.

The next step is to run and download the required API packages for the version of Android you want to develop for I recommend downloading the latest API 19 (KITKAT) as most Android devices incorporate this version in their system and it is beneficial for the apps you develop to be compatible on most devices.

Click the SDK Manager:

Once the SDK Manager appears you will be faced with numerous check-boxes and different API versions to download. Do not panic I will tell you exactly which ones to download.

The easiest thing to do is to click any check-box with "19" in the name including "19.0.1" the next image will show which check-boxes you need to install. There is however one more package to download the "Google USB Driver" package located near the bottom.





Note: The number of install packages will be greater than mine, due to the fact I have already installed the packages.

 Accept the licence and install:


Note: Installing these packages may take a while go and grab a coffee!

The next step we will create an emulator in Eclipse. An emulator is basically a digital representation of an Android device, this is how we will run our applications before we distribute the app. The emulator gives the developer a sense of how their app will look and feel on the intended Android device.

The first step will to run Eclipse, the location of Eclipse is in the folder marked Eclipse, this folder is located where we found the SDK Manager. Once in the folder click the Eclipse icon. 


Once Eclipse is up and running you will want to click the "Android Virtual Device Manager" located on the top tool-bar of Eclipse.


On the next screen click the "New" button and we can start to specify the type of Android emulator device we want to run on our PCs. The specifications I will be using are a 5.1 WGVA device running API 19.
Copy the specifications in the below image to create an emulator, the name does not matter but I like to keep the naming convention to the device I am currently using.


When you click the "OK" button the once empty "Android Virtual Device Manager" will be populated with the emulator we have created. The next step is to select and start the emulator.


Almost Done! The last window before the emulator starts running is to launch the emulator. The emulator at first takes a long time to kick in, but fortunately the more times you run the emulator the faster it becomes. This is all to do with the snapshot feature in the following window. This saves the state of the emulator in a big file to be called upon when the emulator is started again. Be patient at first but if you experience any problems with the emulator close the emulator and start it back up however this time to un-check the "Launch from snapshot" option and launch it again. Once again I urge you to be patient. 

Finally! The emulator should be up and running, play around with the emulator for a little bit and get a feel for it before we get on to actually developing apps for Android. The emulator will look like the following images. If you close the emulator and run it again, check the "Launch from snapshot" option and it should start up significantly quicker. Congratulations we are well on our way!




Introduction

My name is Daniel though I've never really been used to being called my full name, I much prefer the shortened version (Dan). I live in Galway (Ireland) and have done so for the past 8 years, though I am originally from Sheffield (England). I am currently studying Software Development in Galway-Mayo-Institute of Technology. The course is very challenging and teaches a varied set of skills in Programming, Web Development, Business and Communications, App Development, Systems Analysis, Database Management, Networking and that is only what I have covered so far as this is my second year of a four year course. 

The course is kept interesting by balancing material that has to be taught from books and lecturer notes with letting students use their creativity. Subjects such as  E-Business or Systems Analysis require students to attend lectures to learn material from final exams. However students flex their creative sides with subjects such as Web Development and App Development. Having this balance keeps things refreshing as App/Web development can become more of a hobby than an actual subject once you grow and are more confident in your skills as a developer.

The purpose of this blog is required as part of my Business Communications module to create an online presence, though I feel this could become much more than that over time and could even develop into a hobby much like the other aspects of my course. I will mainly document projects that I am currently working on, expressing my thought process, the difficulties I may face and ways of overcoming them, but also share views on a particular piece of software/hardware I may come across or interesting shifts that may occur in the industry, I will also like to help any would be software developers out there get their feet wet by creating a few easy to make apps for either Android of Windows Phone devices.