Saturday, August 29, 2015

Making Contact




Recently I’ve been working on a design for Jenna Dioguardi's actor portfolio website. I’m building it as a custom template on the Wordpress platform so it’s easy for her to maintain without a development team.

Style guide for Jenna's site
Most of the work so far has been revising designs, and finally this week I’ve set out to code everything. It’s one of my first projects, so it will be a lesson in itself — learning as I go. My process has been “ok we’ve designed this really cool thing… now how do I make this?” Not the most time efficient process but one that definitely forces me to learn a lot!

My recent accomplishment has been designing a very simple contact form that integrates with the Wordpress admin panel.

I thought this was worth sharing, based on how it’s actually quite simple to code, and it’s a shame that developers so frequently rely on throwing a plugin into their website.

This article http://premium.wpmudev.org/blog/how-to-build-your-own-wordpress-contact-form-and-why/ by Harley Alexander was extremely helpful, not only in convincing me that I could feasibly accomplish this task on my own, but Harley is very thorough in his tutorials.

Honestly, before now, I’ve never really liked the PHP language. It always feels so messy: Mingling HTML, logic, and server requests all together into one messy script. There also seems to be an endless amount of functions that do such specific tasks, I find it tricky to work through when compared to other languages, but maybe that’s because I’m still a newbie.

Despite my grudge against PHP, Harley really kept his tutorial bare bones, yet included all the essentials necessary for a working contact form. If you’re looking for a nice breakdown on this topic, I highly recommend checking out his post.

Venturing onward, my task for today is to develop a portfolio page!

Monday, August 17, 2015

301 Redirect



In just two days I will be leaving New York and west-bound to Austin! The adventures just keep rolling in!

For the past two weeks, I’ve had the added challenge of balancing my coding studies with packing up everything in our house. Regardless, I’ve squeezed in bits of studying whenever possible and tried my hardest to keep up my track record on GitHub.

New York has been such a great community, I’m really going to miss it. On the other hand am I looking forward to exploring Austin and the tech community there.

Don’t worry, I’ll keep it weird.

Friday, June 26, 2015

Updates



Ok so I took a little hiatus from blogging, but I assure you I have not taken hiatus from coding!

I’ve been busy while I was gone…
  • I’ve been putting painstaking hours into trying to understand EmberJS.
  • I’ve been taking courses on how to draw and animate with JavaScript (so fun!)
  • I’ve finally learned Bootstrap.
  • I’ve been finalizing designs for two actor portfolio websites.

Now that my summer vacations are over, I’m ready to get serious with my career-changing plans again. I’ll be posting more of my findings very soon.

Wednesday, June 3, 2015

Enter the JS Universe



Last night I managed to get out to another tech meetup to learn about various front-end development tools and techniques. It was really awesome to sit in a room with a bunch of coders, and listen to them discuss things that I have so far only been reading on forums. It really pumped me up, and I just can’t wait to be a part of a team!

I am baffled by how expansive the universe of JavaScript really is. Lately in my studies it seems that I open door after door to new concepts… new frameworks… new techniques. Last night, I found myself just writing terms in my notebook which I didn’t understand at all.

The page is covered with notes like “What does .map() do?”, “What’s NPM?”, and “splats??”

I learned last night that JavaScript can now be used to make installable iPhone applications via JSX – This was very encouraging to me, as that only opens up more options to where I might land at the end of all this hustle.

It’s really exciting to dive into a new world like this. It’s like exploring a different world that’s inhabited by this thriving and complex civilization who call themselves “developers”. I’ve still got a lot to learn!

Saturday, May 30, 2015

Framework, Library, API - What Are You!?

 
If you’re new to programming like me, you might be lost in all the labels. As I’ve studied, I’ve heard so many different labels tossed around — Framework, Library, API, Toolkit… they seemed to be used interchangeably. Then when I had an expert proof-read my resume, he told me “JQuery is a library not a framework, and AJAX is more of a technique”. I realized I needed to study a little bit of vocabulary here.

Well here’s what I understand, based on my research:

A Framework is like the skeleton of your software or website, it dictates the architecture of your software. Like the frame of a car, it’s typically a pre-designed template to support whatever it is you’re creating. Examples of frameworks: Bootstrap, Ember.

A Library is a bunch of code that you can easily use when developing any application, without having to focus on all the details of its inner workings. Libraries make development quicker and easier. Usually libraries focus on specific tasks, and don’t include all the services necessary to run an application like frameworks do. Examples of libraries: JQuery, Sass.

A Toolkit is similar to a library, in that it is a set of code that can be used for specific tasks. Toolkits are supposedly not so popular anymore, since libraries are now the preference.
Example: Dojo

An API (Application Programming Interface) is essentially the documentation, or the rules that govern a framework or library. You follow these rules to use a library correctly.

It seems that most of these resources clearly define themselves on their respective websites. Some seem to be oddly categorized though, for instance Angular defines itself as “a toolset for building a framework”, but I’ve also heard it referred to as a library. I suppose at a certain point the vocabulary becomes natural.


References

[1] http://stackoverflow.com/questions/3057526/framework-vs-toolkit-vs-library

[2] http://stackoverflow.com/questions/8772746/difference-between-framework-vs-library-vs-ide-vs-api-vs-sdk-vs-toolkits

[3] http://cs.lmu.edu/~ray/notes/toolkitsandframeworks/

Monday, May 18, 2015

Order Of Operations



When I decided to start exploring coding as a career, one of my first google searches was "what is the best order to learn programming languages?" This led to a ton of forums containing arguments about what the best order was and I never really found a solid answer. I was recently reminded that I'm still struggling with this order of things and having to back-track in my studies all the time.

A couple days ago in a meeting with a tech startup, I was told a little bit about what makes their website run. They told me I would be welcome to contribute to their project and learn from experience but first I should learn a JavaScript library called ember.js.

I ran home, found an ember tutorial, and dove right in. Then of course I saw the warning: "Before learning ember, you need to understand AJAX and JSON." I needed to back-track a bit to get through ember.js the right way.

Throughout the past six months of self-teaching, I've found that back-tracking like this is inevitable. Without any sort of course structure or counseling, you're faced with the challenge of not only learning the material but also figuring out the best way to learn it.

It seems like there are probably about 70 popular JavaScript libraries in use now, and over 1000 listed on JavaScripting.com. (If you're reading this far after May 2015, there are likley more!)

There's no way to be familiar with all the libraries and frameworks, but it seems to me the most important thing is to understand their foundations. From what I understand so far, not only does it help to thoroughly understand the syntax of core languages, but you'll also have a general understanding of what's happening under the hood of each method, and you'll have an easier time debugging issues or finding efficient solutions.

If you're trying to teach yourself web programming like me, I've found this is the best order to learning programming languages:

HTML - learn the DOM (document object model), and how a browser builds a webpage.
CSS - learn how a browser styles and positions elements, and the cascading effect (look into OOCSS for best practices).
JavaScript - the foundation for all the other libraries out there.
PHP - necessary for a lot of server-side tasks like writing to files or databases.
SQL - useful for many server-side tasks and data persistence.
XML - A good introduction to what JSON does better…
JSON - opens doors to work with AJAX pretty efficiently.
AJAX - allows fast, asynchronous downloads of information from server.
JQuery - learn how plugins and chaining events work.

I've learned all these things in a completely jumbled way, going from one to the other, and back again. Knowing what I do now, this is the most logical order I'd recommend going in.

Of course with my currently limited understanding of the industry, I can't claim I'm an expert here. I might find myself backtracking again next week. I'm just excited to continue exploring what else is out there and make some coding magic happen!

Wednesday, May 6, 2015

Hello NY Tech Meetup



One of the earliest career tips I received was to meet everyone I could possibly could, because getting a job today really relies on face-to-face connections. I won't lie... this is not my favorite thing. I'm just not the kind of guy who runs up to strangers to talk about how I'm changing my whole life around.

I'm sure I'm not the only shy coder out there. As someone from an entirely unrelated background, of course I feel like an impostor amongst the pros.

Well after weeks of anticipation, I finally attended my first Meetup — the NY Tech Meetup. It was probably the best grand entrance into a new community, with hundreds of attendees, the Skirball Center auditorium at NYU was packed to the brim!

Presentations included many very interesting startups, from furniture marketplaces, to language education, health, and even a cool AI personal assistant for your e-mail account.

There was lots of mingling, schmoozing and bumping elbows. I learned a lot, trying to be shameless about how green I am. Regardless, everyone I met was understanding of my position and very supportive. So far, the support has really been a warm welcome.

If you're like me, a newbie in such an advanced world, don't worry too much. Ignore those nervous thoughts and just pretend you belong, even if you don't believe it. Work out your elevator pitch, commit to a meetup, and put on a mask. You'll soon find that you won't be pretending anymore.

Afterwards there was the added perk of free alcohol and cake! I suppose I can muster the courage to mingle if cake is involved. 😝

Learning MongoDB from MySQL Background

Until this point, I've only had experience with using MySQL databases, but I've been wanting to try MongoDB because it has a fu...