Categories
General

How I use Evernote to write blog posts

How I use Evernote to write blog posts

It is 7:07 am and my train has departed from Westmoreland station. I’m writing this blog post using Evernote on a Samsung Galaxy S3.

In this post, I want to share how I use Evernote to write on my blog. Here are the 6 steps I take to write blog posts using Evernote:

1. Focus on writing
I take the train to work everyday. It takes me an average of 37 minutes to go from Westmoreland Station to Mockingbird Station. During this time, I concentrate on writing. My focus is to write without paying attention to grammar errors. This allows me to write without distractions. Sometimes I create an outline before I start writing. Today I just started writing and captured most of my thoughts. I would say that 80% of my writing takes place in this step.

2. Sync
After I have completed my first draft, I save my work on Evernote. Then I do a final sync so I can open up my blog post on my computer.

3. Transfer notes to computer
At this point, I use my computer to open up Evernote and copy the title and contents over to WordPress. Inside WordPress I make sure that I save my post as is.

4. Delete note inside Evernote
Since I have a copy of my note in WordPress, I delete the note in Evernote. This helps me keep a clean list so I don’t write about a topic more than once.

5. Edit in WordPress
In this step, I read the entire post a few times. Then, I start the edit process. I also try to add images to my post at this step.

6. Publish
Finally, I click on the “Save Draft” button and preview it a final time before hitting publish button.

Categories
General

Invest in yourself

Today I want to share what you can do to invest in yourself. Doing these things will help you grow as a software professional.

Buy Books
The software industry is always changing. There is always a new software package being created. To give you an example, Javascript libraries are created everyday. Some of them will be very popular while other will only see a handful of downloads.

I had the opportunity to work with Angular and Node at Verizon but I feel I need more knowledge on those subjects. To help me buy a programming book, I usually go to amazon and read the book’s review. Based on the reviews and the content of the book, I will buy the book.

In previous posts, I shared how a beginner’s book helped me learn Asp.Net. Pick a subject or programming language and buy a few books. Lately, I wanted to learn Android and bought 4 books. I’m not an expert on Android but I was able to setup my development environment and write a basic application.

Books will help you expand your knowledge. For sure, you will receive a return on investment with books.

Create a Blog
Before I started my own blog, I heard many developers give advise on how to get involved with the community. Most of them suggested creating a blog.  Scott Hanselman and John Sonmez have given this advice. Creating a blog will improve your writing skills. It will also improve your communication skills.

Ruby is a programming language that I want to learn more about. To get better at Ruby, I have written blog posts on rails, rubygems, and minitest.

Having a blog also will also open up new opportunities. It is your electronic business card. I can say that my blog was a key factor that helped me get my current job. It is a great way to show your skills. For example, if you are looking for a job as a Javascript Engineer, you can reference any blog posts that you have written about Javascript.

Join a User Group
In addition to buying books or creating your own blog, you can also join user groups in your area. Lately I’ve joined the ASP.NET community standup online. This is a weekly stand up created by the ASP.NET team to keep the community up to date on what is happening with ASP.NET. To see all of the ASP.NET standups videos,  you can go to this playlist.

If you want to join in person, search a local meetup group. There are hundreds to choose from. I usually go to the Dallas ASP.NET user group and Dallas Ruby Brigade. The point is to get involved with the community. I have learned so much from these user groups.

Conclusion
If you are serious about your career, you should invest in yourself. Buy books, read blogs, but more important is having your own voice. Create a blog and teach others. I believe learning and teaching will help you grow in your software career.

Categories
General

Thanks Microsoft for contributing to my paycheck

dotnetframework
After graduating from Sourhern Methodist University, I wanted to secure a full-time job in IT. All I read in job postings was “required .net framework”. Most of the job openings required the .Net framework. Since I only knew Java and Visual Basic 6, I knew I had to learn .Net. I bought a beginning book from Wrox and it gave me steps by steps instructions to develop .Net applications.

I remembered writing a credit application for my parent’s furniture store. After working with my parents for 7 years and barely surviving, I was ready to put my self-taught .Net knowledge to the test. I was ready to start interviewing again.

I uploaded my resume to different sites. In addition to posting my resume online, I also applied to many companies. I interviewed with lots of companies but most of them required more experience with .Net. They wanted .Net experience in a software company or big IT department.

At this point I was getting a bit disappointed, but I continued with my research. In December 2008, I received a call from James Paul. James was the co-founder of PrintPlace.com and he found my resume online. I was so excited that someone found my resume. He invited me to their Arlington office and the interview was not technical. The interview went well and the final step was to interview with John. John was the lead developer during that time and I was able to answer most of the questions correctly.

I spend a year and a half with PrintPlace and during that time, I was able to learn more about .Net and Asp.Net.

After leaving PrintPlace, I worked for Ristken, Verizon, and now MD Buyline.

In all of these jobs, I have utilized the .Net framework to build web applications. Thanks Microsoft for creating the .Net. The .Net framework gave me the opportunity to be a software professional. It gave me an identity and I can say proudly that I’m a .Net developer. Thanks again, Microsoft.

Categories
General

How Google got me started in my software development career

google

I received my high school diploma back in 1997. I attended MacArthur High School in Irving, Texas. During that year, many teachers would ask students what they wanted to do after graduating. Most of the students mentioned that they wanted to attend college and then find a job.

For me, it was different. I had no idea what I wanted to do after completing high school. During the summer of 1997, I visited community colleges close to home. I visited North Lake and Mountain View. Since Mountain View had a soccer team, I decided to go with them even though North Lake was 5 minutes from my house.

During the first year at Mountain View, I took an introduction course in computer science. As part of that course, we had to research a topic and write a term paper. After receiving my assignment, I wasted no time and went to the library to start my research. After using a computer and a web browser, I was hooked.

Google provided so much information to my research. Not only I was only to complete my paper, I was also starting in my software development career with Google.

At that moment, I knew what I wanted to do. I wanted to study the web. I knew that the web was going to change so many things. It was going to change how we do business. It changed how we worked and innovate in today’s world. I’m glad I picked the right profession. I can say that thanks to Google, I was able to study HTML, CSS, and Javascript. Thanks Google.

Categories
Git Github open source

My fellow developers, ask not what your community can do for you, ask what you can do for your community

JFK

One of the most famous quotes from JFK is “My fellow Americans, ask not what your country can do for you, ask what you can do for your country.” This quote has inspired generations to be more involved in public service. It has inspired us to do more for our country. To be better citizens.

We can also apply the same quote to the software industry.

“My fellow developers, ask not what your community can do for you, ask what you can do for your community.”

Lately, I’ve been thinking of the impact the open source community has in our lives. There are thousands of open source software created by the community. The majority of these professionals do not get paid to work on these projects. They work on those projects because they are solving problems. They enjoy solving those problems. They are not waiting for others to solve those problems.

I want to inspire developers to start contributing back to the community. To help you do that, I have listed 3 easy things you can do to contribute to open source projects:

1. Documentation
Currently, the place to go to contribute to open source projects is github. Find a project that interest you. Once you find your project, read the documentation. I have seen many projects without a readme file. Go ahead and create one. If there is a readme file in place, see if you can spot any grammar errors. If you find any issues in the readme file, update the file with your corrections. If you need help getting started with github, read github’s bootcamp tutorial here.

2. Donate Money
Another way to give back to the community is to donate money. Many projects have a donate button in their front page. If you find an interesting project but they don’t have a donate button, get in touch with the project owners. Most likely they will accept donations.

3. Test
You can also test open source projects. You can play the role of QA tester. Developers don’t do a great job testing their software. For example, web sites are difficult to test because there are so many browsers to test in. You can test the web site with different browsers. If you find any issues while testing, see if you can figure out why it is failing. Open source projects need you for this kind of work.

I hope these words help you find the inspiration to start contributing back to the community. Be a better citizen.

Categories
ASP.NET C# code General Git Tips

Show me your progress with your commits

Git Commit

I’m currently working in a new application. It’s an ASP.NET MVC site written with C#. We are using the following technologies: Windows Communication Foundation, Knockout, Bootstrap, PostgreSQL, and Git.

I’m working on a new feature that will require me to make changes to the UI, javascript files, add new database tables, add service methods, add unit and integration tests. In other words, I have to modify all layers in our application.

To accomplish this task, I decided to try something different. I want to show my progress with my git commits. I want to complete small tasks and then commit my changes. For this specific task, I started writing a falling integration test. This failing test forced me to create the new database tables needed. After creating the tables, I ran the tests again and this time everything was back to green. At this point, I’m ready to commit these changes. This commit is the beginning of my work and it gets me closest to the final goal. I go ahead and commit this change.

commitTableCreation

After adding the database tables, sql scripts to generate them, and some unit tests, I’m ready to start adding service methods, data contracts, etc. For this task, I follow the same technique as above. My unit tests pass and I have not broken the build so it is time for another commit. With this second commit, I’m feeling productive. I have accomplished something. I can show my progress to my boss or team members with these small commits.

On the other hand, working for a long time without committing your changes, makes me nervous. What would happen if your hard drive fails? It happens all the time. I think we all have experienced losing our work. Many times it was something other than a hardware failure. It was a human error. For example, we deleted some files that were not in source control by mistake.

That’s why I like to commit often. As long as my project builds and my unit tests pass, I’m going to commit my small changes. I know that these commits don’t fulfill a complete feature, but they take me a step closer to my finish line.

After a few commits, I have accomplished enough back-end code that I can concentrate on the UI. Here is the initial version of the UI:

ContractSurvey

It is not perfect. I know that changes are inevitable. I would say that right now I have completed 80% of the task needed to bring this work to completion. I have 20% more to go and I can see the finish line. Seeing the finish line motivates me to do my best and finish strong.

I urge developers to commit small changes and commit often. Remember that these small changes will help you accomplish your goals sooner rather than later.