Michael Dorf

Michael is a professional software architect, web developer, an open-source enthusiast, and more recently, a WordPress addict. He has been creating software and teaching courses in Java and J2EE development for a dozen of years. Michael blogs about Hadoop, Java, Android, PHP, MySQL, and other cutting edge technologies that define today's web. He is also (and most importantly) a father of three little angels, Katya, Sasha, and Nadia and a husband of his beautiful better half, Simona. When his four princesses are not at his side, he enjoys playing a game of Soccer, Ultimate Frisbee, and Volleyball. Michael holds a M.S. degree in Software Engineering from San Jose State University, a B.S. degree in Computer Science from San Francisco State University, and a B.A degree in Political Science, Public Service from UC Davis.

Find Michael on:

MySQL Caching Techniques

April 5th, 2010 Leave a comment
MySQL Caching Techniques

MySQL is an incredibly powerful and robust database which is why it powers so many web sites and web applications today. However, even the best database often needs additional help to keep up with the high volume demands of popular sites or web applications. MySQL is no exception. One way that many developers squeeze additional performance from MySQL is through caching in order to reduce the number of queries hitting the database. There are a number of techniques for caching MySQL queries. Cache Types File-based Cache The simplest system for MySQL caching is a file based system. In… View full post »

Best Android Books: My Top 5 Choices

March 29th, 2010 Leave a comment
Best Android Books: My Top 5 Choices

NOTE: We’ve recently released a more up-to-date pick of the best Android books here: Best Android Books: Top 5 Choices for 2013. There are a number of high quality books available about Android and Android application development. As with any subject, Google Android books vary greatly in quality and how broadly they cover their subject. We picked these 5 because they each approach the subject from a different perspective. Some carry the “introductory” flavor throughout the book, while others “ease you into” Android and then delve with more advanced topics. The point we are trying to make is… View full post »

Software Development Using Agile Methodology

March 15th, 2010 Leave a comment
Software Development Using Agile Methodology

We all have lived through the nightmare of a project lacking the process to guide it. The lack of a process usually leads to unpredictability, lots of repeated error, and wasted effort. We end up having disappointed customers who are not happy with growing budgets, slipping delivery schedules and poor software quality. At the same time developers are disheartened by working ever longer hours to produce ever poorer software. Once we have experienced such a fiasco, we become afraid of repeating this experience again which becomes stressful and no longer fun that we thought software development… View full post »

Secure Your Database

March 12th, 2010 Leave a comment
Secure Your Database

What must one do to protect the company’s biggest asset – its data? That’s a frequently asked question today that has no right or wrong answer! The solution is based on a number of different variables, such as, what is your database vendor, what is the purpose of your database, does your database store credit card information, who manages your database, and others. Obviously, there is no single approach to securing your database. However, these are the general best practices utilized in he industry to protect a database system. Stay Up-to-date Be proactive in staying up-to-date on all current vulnerabilities related to the… View full post »

Understanding Database Vulnerabilities

March 11th, 2010 Leave a comment
Understanding Database Vulnerabilities

Database is one of the most integral components of any system, and keeping data both secure and accessible is a demanding task every business is facing today. One of the more recent trends in enterprise security has been the movement away from protecting the perimeter of the network to protecting data at its source. Today’s corporate environment must provide access to data not only to its employees, but also to partners and customers located on separate networks, potentially thousands of miles away. In order to protect the database system, one must first understand its vulnerabilities. In general, database… View full post »

Building Scalable Web Applications with PHP & MySQL

February 28th, 2010 Leave a comment
Building Scalable Web Applications with PHP & MySQL

Scalability is an important consideration when building web applications. Scalability generally refers to the capability to handle a growing traffic load. Traditionally, PHP hasn’t been considered overly scalable. However, that has more to do with how PHP applications have been written in the past rather than any limitation in PHP itself. WordPress and Drupal are both excellent examples of scalable applications built in PHP. Scaling your web application with PHP and MySQL simply involves following some of the practices used in WordPress and Drupal. Employ Modular Design Building a modular application is one sure way of scaling… View full post »

Why Use a PHP Framework?

February 25th, 2010 Leave a comment
Why Use a PHP Framework?

Frameworks for use in web development have been steadily gaining in popularity. Some web technologies, such as Ruby on Rails, are frameworks. Others, like CSS, are benefiting from the emergence of new frameworks like Blueprint CSS. There are a number of high quality frameworks for use with PHP. These frameworks bring a number of benefits to your PHP development. And it is these benefits that are why you should use a PHP framework. Model-View-Controller (MVC) Most PHP frameworks are based on the design pattern known as Model-View-Controller (MVC). This design pattern uses object oriented code to… View full post »

Web Development Tools I Can’t Live Without

February 25th, 2010 Leave a comment
Web Development Tools I Can't Live Without

Every developer has a tool chest of favorite tools that make their work easier. These tools vary from developer to developer and of course, are based on the type of development being done. For web development though, I’ve found a handful of tools that I simply cannot do without. None of these are new or unknown, but I wanted to aggregate them into a single handy list. Vim http://www.vim.orgVim or Vi Improved is the standard text editor for Unix and many Linux systems. I learned HTML on Vim before we had WYSIWYG editors for web pages. This is… View full post »

Is Android the Future of Mobile Computing?

February 22nd, 2010 Leave a comment
Is Android the Future of Mobile Computing?

Devices like Apple’s iPhone and the various versions of Blackberry smartphones are revolutionizing computing. Phones and phone-like devices are increasingly blurring the lines between notebook computers, netbooks and phones. The mobile computing revolution is on! One platform, however, truly stands out as a potential game changer. That platform is the Android platform from Google. Is Android the future of mobile computing? There is certainly a strong potential for Android to shape the future of mobile computing. Android’s strength comes from its openness. The Android SDK is open source and the license governing Android itself allows any… View full post »

Technorati Verification

January 27th, 2010 Leave a comment
Technorati Verification

Technorati seems to have this, IMHO, ridiculous way of verifying your blog. You have to create and publish a post just for them that contains their code. Perhaps I’m missing something here, but searching on Google for “technorati verification” yields a slue of similar posts that make no sense whatsoever. Here is the note from them: “Technorati will need to verify that you are an author of the blog by looking for a unique code. Please put the following short code 5DGGP7XBB5U8 within a new blog post and publish it. Once it is published, use the “Verify Claim Token” button… View full post »

LearnComputer Goes Live!

September 28th, 2008 Leave a comment
LearnComputer Goes Live!

We are very excited to announce the birth of our new computer training school, LearnComputer. We are a couple of Silicon Valley geeks with advanced degrees in Computer Science and Software Engineering and years of practical experience in the field. We have been teaching various related subject matter disciplines in a less formal setting for a number of years now, and we have finally decided to make it official! The current plan is to offer a variety of affordable computer courses in the areas of Java, Android, Networking, Linux, Web Development, and Database Systems. Our instructor-led courses will… View full post »