Swimming has been my favorite sport which I practice since I was a young kid and it’s the sport which I practice most regularly. Even as I get older and find other sports like soccer or tennis seem to be getting harder on my frame, I am still able to swim as agile and flexible as I was many years ago. It’s the sport where I feel more refreshed and feeling better when I am done.
Here’s how I made my swimming sessions more enjoyable and fun using these accessories:
- Prescription Goggles. I wear glasses and do not use contact lenses so I have two choices when swimming; swim without glasses and not see very well or wear them which is awkward while swimming. Both ways aren’t very practical, specially when playing ball in the pool when I was concerned my glasses would get knocked off. I decided to get a pair of prescription goggles. I got one from www.aquagoggles.com. On their site you enter your prescription and select a pair and they’ll send you your custom goggles. Great price and great fit.
- Anti fog spray. The goggles were great except they would fog up frequently and I had to clear them with water. It was becoming annoying. aquagoggles.com sells a spray which is a lot cheaper than the brand I got from Amazon. The one I got worked great. A single spray works for one swim session and the goggles were very clear the whole time.
- Waterproof audio player. So sometimes it gets boring and lonely when doing laps for a long time. I sometimes swim at 10 at night. I decided to get yet another gadget, a waterproof audio player, and listen to music or podcasts while swimming. They can be used for audio books too. It helps in making time go by faster. I used two different brands of regular ear buds type waterproof players which I got from Amazon and they failed pretty quickly. I decided to get one more player and if it fails, I would conclude that these players are not meant to be used in water. The third time I decided to get a high end one. The FINIS Neptune player intrigued me because it uses bone conduction audio transmission. I was surprised that it worked very well. You have to use goggles because they have to be clipped on the goggles strap for support. You also need to use earplugs because the noise from your surrounding will overwhelm the sound conducted through your temples, unless you put the side speakers right on top of the ears. They might be a bit bulky but they weren’t heavy. It lacked a fast forward feature which I wanted. I pinged FINIS and told they need to add this feature.
- Ear plugs. These are needed for the Neptune player to make the audio clearer. Without them, the regular audio from outside through your ear will compete uncomfortably with the audio from the player through the bone conduction. It makes a huge difference. I use the silicone putty from Mack’s which I got from my local Walgreens. I don’t recommend the sponge ear plugs. I don’t believe they work well in water. The ear plugs help too in alleviating water pressure when swimming under water. My ears are pretty sensitive to water pressure.
- Nose clip. You might need a nose clip if you do certain under-water maneuvers which make water go into your nose.
Enjoy your swim.
The other day the diagnostics warning light came on. I have 90k miles on my car, most of them driven by me. I figured something in the car needs to be checked out. A modern car has all kinds of sensors which monitor the different functions and devices in the car. A typical modern car has an OBD II output plug which one can attach an OBD II scanner to. The plug is usually in the car under the driver side console. The scanner can display a code which tells you the cause of the issue. The code by itself is not meaningful so you still need to do a code lookup to get the corresponding description. There are web sites and mobile apps which translate the code to a description.
I didn’t have a scanner so I went to an AutoZone auto parts store. They can scan the code for you for free. Meanwhile I ordered a Bluetooth OBD II scanner for about $7 from eBay. Very cheap and it includes shipping from China. The scanner is a little unit which plugs into the car’s OBD outlet and it communicates with your phone through Bluetooth. On my Android phone, I enabled Bluetooth, paired it with the scanner and installed an Android OBD app called Torque Lite. The screen shot above is from that app. You can configure it to display different gauges and readings and there are many readings you can choose from. There are tens of OBD apps in Google’s app store and you can try some and choose the one you like the most. I am sure the iPhone has similar apps. The apps should at least be able to display the code for the issue which caused the warning light. My code was about the catalyst converter. Oddly, just before going to the dealer to have check the car, the warning light went off. I told the dealer what the code was and they told me there was nothing wrong with the converter. They explained that sometimes the real issue could be a different device. Luckily after doing a checkup, they couldn’t find anything wrong.
After using the scanner, I was surprised about the amount of readings and feedback the car can give. Personally one interesting reading is the Miles Per Gallon (MPG). I like to know how my different driving styles can affect my fuel efficiency. What surprises me is why don’t the car manufactures display the codes in the car’s dashboard. The car already can output the codes. The dashboard can display information so why not connect the two? The MPG reading is pretty useful and I wish it was in the dashboard.
Instead of installing a LAMP environment by installing the different components separately in Windows, there’s a simple one click install which works beautifully. Plus you can install PHP apps like WordPress, Drupal, Joomla using the same one click installs.
- Download and install XAMPP
- I am running IIS on my machine which uses port 80. Therefore Apache needs to be using a different port as you can’t have two web servers listening on the same port. Run C:\xampp\xampp-control.exe. Clicking the Start button for Apache will fail because Apache is trying to listen on port 80 which is already being used by IIS. Apache needs to use a different port. Click on the Config button and open the httpd.conf file. Change the line ‘Listen 80’ to ‘Listen 81’ or any available port. Save the file. We need to change the SSL port as well. Click the Config button and select the httpd-ssl.conf file. Change the line ‘Listen 443’ line to ‘Listen 444’ or another open port. Save the file. Now clicking the Start button for Apache will start it. If not, view the visible log for the error and fix accordingly.
- Click the Start button for MySQL. Now your LAMP environment is ready for use.
- Download and install apps like WordPress from Bitnabi. The installer is smart enough to install the app within XAMPP. No further configuration is necessary
- To bring up WordPress for example and if you followed the previous steps, open a browser and go to localhost:81/wordpress and WordPress should show up. Follow the instructions from there for first time use.
- Similarly if you installed Drupal and Joomla, you can use localhost:81/drupal or localhost:81/joomla
- I wrote the instruction above from memory. I hope I didn’t miss a step but it should be easy to follow the steps.
In my previous post I talked about how to view what SQL statements a PHP program sends to a MySQL database in real time. Coming from using Microsoft’s development tools (Visual Studio, .NET & SQL Server) to using PHP and MySQL, I feel Microsoft has made me a spoiled developer with the tools I have on hand. Tools that are very powerful, yet easy to use and require very little or no setups. I came across a tool which enables me to code and debug PHP in my favorite IDE, Visual Studio (VS).
PHP Tools for Visual Studio from Devsense. It’s a Visual Studio extension which enables you to code and debug PHP applications right from inside VS. It’s very easy to set up including the set up for xdebug for debugging. It even showed the recommended xdebug settings and offered to apply the changes to php.ini instead of me doing them manually. As a PHP beginner, I like that PHP documentation is available inside VS. When hovering over any PHP method, a tooltip shows me the function description. It’s a big time saver. I don’t have to open a PHP site or book to learn what function does. A basic version is free and a Pro version is $79. A 30 day trial is available which has all the Pro features. The Basic version doesn’t include debugging and other features. So for me the Basic version is of no use as the whole reason for me for using such a tool is for debugging. I just started evaluating the product yesterday and I am very impressed with the ease and quality of this software.
I am a full time .NET developer however I am working on a personal project which involves WordPress and converting a WordPress to .NET. That’s why I am learning PHP because I need to know how WordPress and the plugin work in PHP. More...
One application I find very useful is SQL Server Profiler which I often use for debugging Windows apps which connect to SQL Server. The profiler displays all the commands which were issued by the app. One of my personal projects I am working on is WordPress. WordPress uses PHP and MySQL for its database. WordPress interacts heavily with MySQL. I need to debug WordPress and find out it’s sending to MySQL? I need a tool like SQL Server Profiler. I did some research and was disappointed to find out there’s nothing as powerful and as easy to use as SQL Server Profiler. This is when I appreciate what Microsoft provides for its developers. I am a .NET developer and switching to PHP and MySQL is an less pleasant experience. I will blog about how to set up PHP debugging.
I tried different MySQL profilers or tracers, as some call them. I was getting annoyed by how clunky or how buggy or how time consuming these tools are to set up and use until I came across a tool which looked very promising, Neor Profile SQL. It’s a free proxy app which sits between your client (WordPress in my case) and MySQL. It receives and captures the SQL commands from the client and then passes them to MySQL. Then it receives the response and passes them back to the client.
Neor was very simple to set up. All I had to do is tell WordPress to talk to Neor instead of to MySQL and this is done by changing the port it uses from port 3306 (MySQL’s port) to Neor’s port 4040 (can be changed). In WordPress this is done by changing the port number in the wp-config.php. Neor needs to be running during debugging.
Don’t forget to change back the port number when you’re done. This is as close SQL Server Profiler experience as I could get. Real time SQL logging with some useful statistics.
(Screen1): This screen shows the sessions WordPress used to load my home page. The home page has an image slider which issues its own SQL commands.
(Screen 2): Then double clicking the first session, shows the queries in this screen capture. The SQL code of the selected query is shown.
Today I came across an error message from Excel 2013. I was trying to open an .xlxs file and received this error:
I have gigs of free memory (system has 32G RAM) and gigs of free disk space on my c drive and the drive which holds the temp folder. So I know this error message is misleading and the issue is most probably something total unrelated to this message.
After searching the web, the simple solution was to right-click on the file and click the unblock button. It seems Windows (I am using Windows 8) didn’t trust the file because it I downloaded it from the web.
This is a quick tip. If you experience too much jaggies or pixelation when scaling a bitmap image up or down, try Perfect Resize from OnOneSoftware. It comes either as a stand alone program or as a plugin for Photoshop and other graphics software. In some instances, it does a much better job than Photoshop’s resizing feature. The company offers a 30 day fully functional download.
I was researching some commercial Magento themes (templates) this week. Magento is a PHP based e-commerce (shopping cart) solution. My favorite site for providing templates is Themeforest. They have affordable high quality mostly web 2.0 style themes. The site itself is very clean, high quality, simple yet very usable. I sorted the Magento themes by number of sales. This usually means the first themes in the result listing are of polished high quality themes and that’s why they sell well. One statistic Themeforest provides for each theme is the number of sales. I looked at the first theme, Fortis and quickly determined the revenue:
Price $80 x # sold 1639 (as of now) = $131,120. Wow! That’s a lot of money from selling a single digital product. The template was added to Themeforest on March 6th, 2012. Not bad for less than a year display and more to come.
minus Themeforest’s average commission, say 35%, what’s left is $85,228 (rates schedule)
minus taxes, pure profit is at least $50,000.
What do I do to reward myself from a side job which put $50,000 in my pocket?
A brand new exciting Tesla model S car!
So if you want to make some extra money and you’re a good web designer, consider selling templates. Not just html templates but a full theme for a CMS or shopping cart or platform. These templates sell for more and have less competition.
In this post I will describe how to unbend those tiny hard to see pins on an LGA 2011 motherboard socket. I accidently pressed down a few pins on a LGA 2011 socket. When looking at all pins, I noticed a group of pins had a slightly different color from the rest of the pins. This is due to the different position of the pins and how they reflect light.I noticed this and but went ahead placing the CPU in the socket hoping everything would still go fine and the computer start up as normal. Sadly, this didn’t happen.
The computer kept rebooting every 10 seconds after startup. I figured this had to do with socket's pins being not in full contact with the contacts on the CPU. The pins on the sockets are very small and hard to see with the naked eye. I decided I needed a magnifier and a tool to work on each tiny pin individually.
Tools for the job:
1- 30x magnifier. The pins are so small that your typical 3-5x magnifier won't be enough to see them. I got the ‘SE 10X 20X 30X 21mm Chrome Loupes Pocket Magnifier New 3Pc’ from Amazon for $6.99. Great price!
2- Wiha 44501 Stainless Steel Fine Point Professional ESD Precision Tech Tweezers with Static Dissipative Grip and Hypo Allergenic, 130mm Overall Length
from Amazon for $13.79.
I used the magnifier and tweezers to raise and unbend each of those pins. I put the CPU back and started the computer.
The computer never rebooted by itself and I was happy my first troubleshooting fixed it. I was worried I had to get another motherboard.
I use a firewall which is set up to allow Internet access by any app on my system manually. Unless the app has been granted trusted access previously by me, I get a prompt whenever an app is trying to access the Internet. It displays the ip address it’s trying to connect to plus the port number. I download and install a lot of software and I need to know when & why a software is trying to connect to the outside. If the software is from a trusted application and I know it needs access, I give it a permanent permission. I can revoke it later if needed. When a piece of software wants access, my initial reaction is to deny it and see what happens. If it runs fine without the access, I know access was optional. The software vendor is probably collection some information for statistical purposes. Hopefully nothing more! And they do know that some users run software behind firewalls or on systems which physically have no Internet access.
Some software need to need have Internet connectivity for activation or registration purposes which is fine. I let the firewall remember their access on a case by case basis. If there’s software which has no business demanding Internet access, I most probably refuse it and uninstall it.
Here’s a little tip when trying software from untrusted sources. Install the software in a virtual operation system like VMware or Virtual PC or use a sandbox like SandBoxie which I have been using for years. I can right click on an .exe file and tell Windows to run the app inside Sandboxie. Sandboxie can show the registry keys the app tried to use. Sandboxie uses a virtual file system and you can view the contents of the system.
Play it safe.