:::: MENU ::::
  • Suitable for all screen sizes

  • Easy to Customize

  • Customizable fonts.

Monday, 11 July 2016



Our world is moving at an extremely fast pace where technology is concerned, especially in the United States. Generally, this is a good thing–it’s creating more conveniences, new technologies to improve quality of life, more jobs, and so on. But, we’re running into a small problem: we need more manpower.

Here in the United States, according to the Bureau of Labor Statistics (via ComputerWorld), there are more than 500,000 unfilled computing positions (keep in mind this is only in the US, worldwide is much more vast) in various specialties–software engineering, Information Technology, Electrical Engineering (specifically the creation of hardware), and more. It goes without saying, there’s a huge demand for jobs in this field, but there’s not enough people who know how to program, administer a database, create systems to fend off cyber attacks, and so on.

So, what do we do?

COMPUTER SCIENCE IN ONLINE COURSES


The overwhelming response to our lack of people skilled to take on computing jobs has been free education. And that’s the obvious response to a problem like this: offer free education for a specific field, and just maybe the people will come, learn, practice their skills, and ultimately, get a job in the computing field. Now, there’s nothing wrong with Computer Science education, except for maybe the fact that the computing education market doesn’t provide a clear path for a student and that we are lying to anyone who signs up.


First, the computing education market does not have a clear guideline to a job in computing. There are tons of free course and programs popping up everywhere, for free. You can find them at Khan Academy, Coursera, edX, CodeAcademy, Code School, Code.org, Udacity, Team Treehouse, FreeCodeCamp, The Odin Project, and so many more places. And while this provides ample opportunity for learning, there’s not much room for advancement – all of these places will teach you the basics of coding (excluding FreeCodeCamp and maybe Udacity), but won’t take you any farther than that.

There’s a lot of discouragement in this area. The market of getting people started in coding is so crowded, and there are not many resources for increasingly higher skill levels. And this is a good
thing: students should be able to hit the web, look up documentation and try to figure out a problem on their own. But, here’s the problem: many of these courses aren’t in the business of teaching problem solving. They hand-hold until the very end (excluding a few, of course) and then drop the student off in a territory where they are not familiar.

With that said, computing educators, particularly MOOCs (Massive Open Online Courses), need to shift gears. Syntax is important, it has its place. But teaching a student how to overcome problems within programming will last that student a lifetime, giving him or her the tools to constantly adapt with new technologies and frameworks coming out. Giving students the problem solving skills within programming will create quality programmers that can bring quality to work in the jobforce.

              WE NEED TO STOP LYING TO STUDENTS

Another aspect that’s discouraging students from getting into the computing industry is that we’re actually lying to them. As a culture, you wouldn’t believe how many times we bang into a student’s head that coding is easy. News flash: it’s not easy in the least.

I don’t know one person that has picked up programming and instantly got it with no trouble whatsoever. We’ve all been at the bottom of the bucket, banging our heads against the walls just trying to figure out how object-oriented programming works. And even though you may make it through courses, that doesn’t necessarily mean you’re an expert. Even Senior developers have problems with code. Even they spend a large part of their time staring at piece of code, wondering why it doesn’t work and then spend a significant chunk of time trying to get that piece of code to work. In a nutshell, that’s what programming is.

But, we tell new and upcoming students the exact opposite. “It’s not difficult,” we say. Many instructional videos, even from the aforementioned educators, will tell you that coding is as easy as walking. That’s why many will be interested in the idea of coding, get plugged into an online course, and then drop a week or two later after they decided that they just don’t get it.

We need to be upfront with students. Coding is difficult, but the path to learning how to do it is so rewarding. In two, three years, being able to create a website from the ground-up on your own is an experience like no other. But, the path to get there is difficult, just like anything in life.

If we were upfront with students like that, we might just start making a dent in those 500,000 unfilled positions.

But, it doesn’t stop there. No, we actually have to solve the problem of getting people interested in computing.

And that’s not a good place to be. At all.

A bit about me: I’m 22 years old, which means I grew up eating and breathing Pokemon. Whether it was the Pokemon TV show, the Pokemon trading cards, or Pokemon Red Version on the Game Boy Color, Pokemon played a huge part in my childhood. And, while I perhaps haven’t kept up with the latest games on Nintendo DS, I’m sure you can imagine why a free-to-play Pokemon game that I could simply download on to my phone peaked my interest.


Pokemon Go is really the first real Pokemon game for the smartphone, and as such has the potential to be a huge hit. In fact, since it was released just last week, the game has become a phenomenon, almost as much as the original games were way back in the early 2000s. But just how good is the game? I spent a few days playing it to find out.

         GAME PLAY
Pokemon Go is actually a very simple game to play. You start out by creating an account, either through Google or by making a new account. After that, you’ll be able to create an avatar, or character, for yourself. You can pick your gender, hair style, skin color, etc.

Once you’ve created your character, that character will show up on a map, which you’ll notice looks like your street. That’s because it is — the map is powered by Google Maps. And, immediately next to you, you’ll see three Pokemon to catch — you guessed it — Charmander, Squirtle, and Bulbasaur. To decide on a Pokemon to catch, you simply tap on the one you want, at which point the screen will change to an augmented reality-type screen, taking in the scenery from your device’s camera, and placing the Pokemon in the area. If the augmented reality approach is too much for your phone, it can be turned off at the flick of a switch.

Catching a Pokemon is actually very easy to do — simply hold down on the Pokeball at the bottom of the screen, and once the circle around the Pokemon zooms in a little, flick the ball towards the Pokemon. Pokemon can be placed at different distances from you, so you’ll need to flick it hard enough to reach the Pokemon, but not so hard that it goes too far. Pokemon can dodge the Pokeballs or hit them away, however the majority of the time the Pokeball will capture the Pokemon, and you’ll have caught that Pokemon. Of course, Pokemon can escape from the ball too, and you’ll have to throw another Pokeball to recatch it.

That’s really the gist of the game. You wonder around your area (yes, you’ll have to go outside!), and wild Pokemon will show up for you to catch. You can also collect extra Pokeballs at Pokestops, which are located at landmarks around the map. You might also find other items, like Potions (for healing your Pokemon), or Incense, which draw Pokemon to your location. And, you could be given eggs, which will need to be placed in an incubator, and will hatch after you’ve walked a certain distance.

So why would you need to heal your Pokemon? The goal of the game is to capture gyms, which basically consists of going to the gym and battling whichever Pokemon is placed at the gym, as long as it’s a Pokemon from another team — that’s right, there are three teams in the game, and you’ll choose from Valor, Instinct and Mystic when you reach a certain level. If your team currently holds the gym, you can simply place one of your Pokemon there as backup, or, if another team holds the gym you can battle it out to try and take over.

Once you take control of a gym, you can opt to keep one of your Pokemon there, which will defend the gym against others trying to take it over. You’ll also gain rewards in the form of the in-game currency, which can be used to buy items from the store — like extra Pokeballs, more egg incubators, and so on. The only other way to get that in-game currency is, you guessed it, by paying real money.
Of course, the real goal of the game is to catch Pokemon — the more you catch, the higher level you’ll get. Also, just because you’ve already caught a Pokemon doesn’t mean you shouldn’t catch it again should you come across it. Each time you get a Pokemon, it will come with the “candy” for that Pokemon, and extra Stardust. Each wild Pokemon comes with three of its own candy, so if you catch 3 Rattata’s (you’re going to catch many, many more), you’ll have 9 Rattata candy. That candy can be used to level up the Rattata you want to level up (the strongest one is usually the best way to go), or even evolve it if you get enough. To level up, you’ll also need Stardust, which will also come with each Pokemon. Also, don’t worry about having a million Rattatas in your inventory — you can transfer Pokemon to the professor and you’ll keep that Pokemon’s candy, and even get an extra one from the professor.

Unlike previous Pokemon games, battling is not turn-based. Instead, you simply tap on the enemy Pokemon really fast and you’ll attack it. You can also dodge by swiping left and right, or perform a special attack by holding down.

THE GOOD
There are a few things that make Pokemon Go an awesome game. First of all, not going to lie, I’ve done a ton more walking than I otherwise would have thanks to Pokemon Go. The game is truly addictive — especially if you grew up with the game. While you can certainly spend money in the game, so far I haven’t felt like I need to — you’ll get plenty of Pokeballs at Pokestops, and if you’re a good enough shot when you’re trying to catch Pokemon, you shouldn’t go through those Pokeballs that quickly.

The game also looks pretty nice. It’s great that you can switch augmented reality on or off, especially considering not all devices will be able to handle using the camera all the time, and it eats up your battery a lot quicker.

The Bad

As a fan of the classic Pokemon games, I was a little disappointed that there wasn’t more battling in the game. It would have been cool if you could battle wild Pokemon to get their candy instead of having to catch each one, as it wastes Pokeballs and makes it seem like collecting Pokemon is simply for the sake of collecting them, not to get stronger.
Of course, even if you can’t battle wild Pokemon, the fact that you can’t battle friends except in the context of gyms seems like a pretty big omission. You really should be able to battle those nearby, and while there are whispers that feature will be added in the future, the fact that it’s not there yet is a problem for me.

Another fairly obvious omission is that the game doesn’t save your settings — I like to have my Pokemon ordered by number so it’s easier to find duplicates, but when I close the game and reopen it, they’re ordered based on recently caught Pokemon instead.
Also, too many Rattatas and Weedles. I get that it has to be hard to catch them all, but a little more variety would be nice.

The Ugly

The game is seriously buggy. Expect to experience a crash at least a few times per day if you play a lot. That’s assuming you can actually get in and play the game — many often experience a notice saying that there are problems with the game’s server, and telling them to come back later. We can only hope that will get fixed over time, but it’s a pretty serious issue in the meantime. Sure, the game is quite possibly a far bigger success than anyone anticipated, but that’s not really an excuse.

Conclusions

Pokemon Go has recaptured my 10-year-old imagination, and has me wanting to be a Pokemon master all over again. Yes, there are things that need to be fixed, and some features that would be nice to have, but this is an excellent starting point for a game that will no doubt evolve (pun intended) over time. If you’re a Pokemon fan, chances are you’ve already tried the game, but if not download it now — you’re a little behind in catching them all.

Sunday, 10 July 2016


Paul Downey | Flickr
Machine learning is a phrase that’s getting bandied about increasingly often, yet many still don’t know exactly what it is. Of course, there’s a reason for that. It’s still in its very early stages, and many assume it’s not something that affects the general population just yet. In fact, that’s perhaps not as true as some assume.
So what is machine learning? And what is it being used in today? Here’s our guide on everything you need to know about machine learning.

What Is Machine Learning?

Machine learning, simply put, is a form of artificial intelligence that allows computers to learn without any extra programming. In other words, the software is able to learn new things on its own, without a programmer or engineer needing to ‘teach’ it anything. Machine learning is able to take data and detect patterns and find solutions, then applying those solutions to other problems.


                                                         Image: K?rlis Dambr?ns | Flickr

It’s important to note that machine learning as a concept isn’t new at all — it’s hard to trace the precise origins of the concept considering it’s one that merges into and from other forms of technology. You could argue that machine learning dates all the way back to the creation of the Turing Test, which was used to determine if a computer had intelligence. The first computer program that learning, however, was a game of checkers, which was developed in 1952 by Arthur Samuel. This game got better the more it played.

Recent technology, however, drastically improves machine learning. For example, machine learning requires hug amounts of processing power, so much so that we’ve only just started being able to develop basic machine learning in recent history.

There are a few main ways programmers implement machine learning. The first is called ‘supervised learning.’ What that basically means is that a machine is fed problems where the solution to the problem is known. The learning algorithm is able to receive those problems along with the desired outcomes, identifying patterns in the problems and acting accordingly. Supervised learning is often used to predict future events — such as when a credit card transaction might be fraudulent.

Last but not least is ‘reinforcement learning,’ which is used specifically for things like gaming and robots. Reinforcement learning is basically taught through trial and error — the machine attempts things and learns based on its successes or failures. The goal here is for the machine to figure out the best possible outcomes.


Of course, all of these methods of machine learning involve feeding a machine hundreds of thousands of problems, and massive amounts of data. Really, the more data the better.
Where Is Machine Learning Used Today?

                                                             Pictures of Money | Flickr

Actually, there are plenty of places in which machine learning is used today. Many of these are behind the scenes, however you may be surprised to know that a lot of them are also something that you use every single day.
Perhaps the one that you use the most is in your personal assistant — that’s right, the likes of Siri and Google Now use machine learning, largely to better understand speech   patterns. With so many millions of people using Siri, the system is able to seriously advance in how it treats languages, accents, and so on.

Of course, Siri isn’t the only consumer application of machine learning. Another use is is in banking, such as fraud detection. For example, machine learning algorithms can track spending patterns, determining which patterns are more likely to be fraudulent based on past fraudulent activity.
In fact, even your email might be using machine learning. For example, spam emails are a problem, and they have evolved over time. Email systems use machine learning to track spam email patterns and how spam emails change, then putting them in your spam folder based on those changes.

Conclusions
Machine learning is set to be a big part of how we use technology going forward, and how technology can help us. From Siri to US Bank, machine learning is becoming increasingly pervasive, and that’s only likely to continue.

One of the many frustrating things about web development is not having an easy way to share your projects with others. In many cases, you’ll have to host your project on a web server or send over all the corresponding files to someone who wants to see what you’ve created. But thanks to a neat online tool called CodePen, you don’t have to worry about any of that anymore.

CodePen.io
CodePen is a free tool that will let you host your projects online without ever having to pay a dime. To get started, head over to CodePen.io and create a free account.

Once you’ve done that, you can create a “Pen” by clicking the “New Pen” button at the top right corner of the screen.
 

After that, you’ll be able to add any HTML, CSS, and JavaScript to their corresponding boxes. Once you start adding in some code, you’ll get to see a live preview of what you’re creating. You can title your first Pen in the top left corner. After you click on your first “Save,” you’ll be able to simply share the URL of the page with friends, family, and coworkers so that they can see what you’re working on.

This is how your Pen will look with some code in it (courtesy of a Free Code Camp project called Tribute Page):

When creating your own Pen, you’ll want to go through the Settings before getting started. When you click on the “New Pen” button, you should see a Pen template ready for you to start entering some code. In the top right corner will be a “Settings” button. Click on that (you should see the below screen).


 Here you’ll be able to go through the HTML, CSS, and JavaScript tabs to add in certain information. In the HTML tab, you’ll be able to add meta information, things that should go in the <head> tab, and so on. Under CSS, you’ll be able to add CSS Preprocessors like LESS and Sass. Not only that, but you can add in external CSS like Bootstrap and Foundation. Under the JavaScript tab, you can add in a JavaScript Preprocessor like Babel or CoffeeScript. Additionally, you can add in external JavaScript frameworks like Angular, React, Lodash, D3, and so on. 


Finally, CodePen will allow you to change the “View” you’re looking at. The default view is Editor View, allowing you to enter in your code and get a small preview in the console below. But, there are other options as well, with a particularly handy one being “Full Page” view, where you’ll get to see a project as if it was live on a website. There are a handful of other Views available to switch to, it’s worth playing around with!

CodePen really is a neat tool, and we’ve only touched the surface of its usefulness. It’s worth heading on over to CodePen.io and using it to work on a few projects, and then, if you feel like it, share with your friends or coworkers.

What do you think of CodePen? Have you used a similar tool? Let us know in the comments section below!


A call-to-action text Contact us