Monday, July 4, 2011

Mac essentials, free and open-source applications





I was given a change to work and evaluate IOS application development using Xcode suite. To do this, I need to work in Mac environment(in this case, a MacBook Pro). Comming from Windows platform, everything was new to me in terms of software apps, way of navigation, file operations, user interface, application behavior,. etc (and many more). As i begin to familiarize myself with the Mac environment, i try to look for helpfull applications and utilities that are free of charge, open-source or licensed for public use.

The following free, licensed for public and open-source applications and utilities are so far stuffs that i installed on my Mac machine.

Applications

Eclipse - I am using Eclipse IDE to work with desktop application development and Android SDK research using Java in a Mac OS. (Not related to IOS development? yeah, but its kinda nice to try developing Java apps in Mac environment)

TextWrangler - In my case, I use this light weight tool to do coding for HTML, PHP, Javascript, CSS and other scripting language that I need to work with. TextWrangler has features more than just the languange syntax highlighting packed in it. Visit the site to appreciate.

MySql server - I use MySql Community Edition (open-source) for Database Management.

Sequel pro - Sequel pro is a cocoa based database management application for working with MySQL database.

PostgreSql server - PostgreSql for Mac. Says in their site, "Enterprice Ready Database For Your Mac", sounds interesting? yes? The truth is I havent really tried the PostgreSql for Mac but since, Im on the point where in im looking and collecting tools and apps for software development and database management, Ill give this a try soon.

VLC - When taking a break from programming or diverting away from busy research and development, I use VLC to play my DVD videos. VLC is a free and open-source multimedia application.

OpenOffice.org - Sponsored by Oracle, is a suite of desktop applications that allows me to do Word Processing, Spreadsheets and Presentations without needing Microsoft Office. Other apps included are the Drawing, Database and Formula. OpenOffice.org is both a product and an open-source project.

Utilities

coconutBattery - Recommended in TPC (Tipid PC Forum) allows me to monitor and see my Mac's information such as battery charge, battery capacity, battery temperature and Age of Mac.

MenuMeters - I have installed this utility but have not had time to play with it at the moment. MenuMeters is a set of monitoring tools for Mac OS X that allows you to see information on CPU, memory, disk and network. When installed, it adds the configuration interface in the System Preference.

Lets look for more :)

I fired up google to look for other free, open source and licensed for public applications and utilities. Below are links (i found lots of apps thanks to google) to other blogs and sites that shares free goodies for Mac. I havent had enough time to look at each applications in the links below(there's plenty to choose from depending on the needs). They are only links to a list of recommend and top picks apps. You'll find more if you browse into their site.

1. Mac freeware utility belt by www.thriftmac.com

2. LifeHacker pack for Mac and Essential list of best free Mac downloads

3. 15 must-have free Mac apps by www.makeuseof.com

4. 100 free useful applications for Mac by www.hongkiat.com

5. a collection of free Mac apps by www.freemacware.com

6. Top 10 Mac Text Editors: free and for sale

7. Majorgeeks.com have freeware and shareware list of apps as well.

There you go. Lots of free and open-source apps for Mac to work and play with.

Wednesday, June 29, 2011

Store files online using Dropbox


Want to access your files from anywhere using your internet device(Desktop PC, Notebook PC, Net book, Android Phone, IPhone, iPad and other Mobile device)? Can't use your USB hard disk or Flash disk to get and put files in your office PC because the IT department disabled the USB ports for disk use? Here's a tip for you. I have found this online file storage facility that allows me to upload and download files so i can access them from anywhere where there is internet connection.

Its the dropbox.com!



At dropbox,

They offer 2gb of free online storage with subscriptions up to 100gb.
The files are secure and always available from the dropbox website.
Service works with Windows, Mac, Linux, iPad, iPhone, Android and BlackBerry.
Files can be used even if you have no internet connection (local copies).
Updates files by transferring only the parts that have changes.

A whole lot more feature is offered at dropbox. see it, try it.

Outsourcing 2.0 (Lets take outsourcing to the next level)

A friend has been suggesting an extra source of income that could be done at home and/or outside office. Its Outsourcing through oDesk (www.oDesk.com). At the moment, I am on the process of filling up the details in my new oDesk account.

Quote from Crunchbase:
"oDesk enables both employers and contractors of technical, business and creative services to build successful work relationships across the globe. This is possible due to a “pay by the hour” service model which guarantees payment to contractors and allows employers to verify work as it happens. Employers can hire, manage and pay contractors around the world similarly to those working in the same office. oDesk is primarily funded by Benchmark Capital, Globespan Capital Partners, and Sigma Partners."

to see more information regarding oDesk, follow links below.
http://www.manilastandardtoday.com/insideBusop.htm?f=2011/june/7/chinwong.isx&d=2011/june/7
http://www.businessweek.com/smallbiz/content/jun2011/sb20110620_801047.htm
http://wallstcheatsheet.com/stocks/these-jobs-are-not-slowing.html/

other outsourcing company that you might be interested with:
1. vWorker (formerly rent-a-coder) http://www.vworker.com/
2. Guru http://www.guru.com/
3. Freelancer http://www.freelancer.com/
4. Elance http://www.elance.com/



Lets try Outsourcing to the next level!

Csharp CookBook Recipe 1.1

Recipe 1.1. Determining Approximate Equality Between a Fraction and Floating-Point Value



Problem


You need to compare a fraction with a value of type double or float to determine whether they are within a close approximation to each other. Take, for example, the result of comparing the expression 1/6 and the value 0.16666667. These seem to be equivalent, except that 0.16666667 is precise to only eight places to the right of the decimal point, and 1/6 is precise to the maximum number of digits to the right of the decimal point that the data type will hold.


Solution


To compare the approximate equality between a fraction and a floating-point value, verify that the difference between the two values is within an acceptable tolerance:
 using System;

// Override that uses the System.Double.Epsilon value
public static bool IsApproximatelyEqualTo(double numerator,
double denominator,
double dblValue)
{
return IsApproximatelyEqualTo(numerator,
denominator, dblValue, double.Epsilon);
}

// Override that allows for specification of an epsilon value
// other than System.Double.Epsilon
public static bool IsApproximatelyEqualTo(double numerator,
double denominator,
double dblValue,
double epsilon)
{
double difference = (numerator/denominator) - dblValue;

if (Math.Abs(difference) < epsilon)
{
// This is a good approximation.
return true;
}
else
{
// This is NOT a good approximation.
return false;
}
}

Replacing the type double with float allows you to determine whether a fraction and a float value are approximately equal.


Discussion


Fractions can be expressed as a numerator over a denominator; however, storing them as a floating-point value might be necessary. Storing fractions as floating-point values introduces rounding errors that make it difficult to perform comparisons. Expressing the value as a fraction (e.g., 1/6) allows the maximum precision. Expressing the value as a floating-point value (e.g., 0.16667) can limit the precision of the value. In this case, the precision depends on the number of digits that the developer decides to use to the right of the decimal point.

You might need a way to determine whether two values are approximately equal to each other. This comparison is achieved by defining a value (epsilon), representing the smallest positive value by which two numbers can differ and still be considered equal. In other words, by taking the absolute value of the difference between the fraction (numerator/denominator) and the floating-point value (dblValue) and comparing it to a predetermined value passed to the epsilon argument, you can determine whether the floating-point value is a good approximation of the fraction.

Consider a comparison between the fraction 1/7 and its floating-point value, 0.14285714285714285. The following call to the IsApproximatelyEqualTo method indicates that there are not enough digits to the right of the decimal point in the floating-point value to be a good approximation of the fraction (there are six digits, although seven are required):
bool Approximate = Class1.IsApproximatelyEqualTo(1, 7, .142857, .0000001);
// Approximate == false

Adding another digit of precision to the third parameter of this method now indicates that this more precise number is what you require for a good approximation of the fraction 1/7:
bool Approximate = Class1.IsApproximatelyEqualTo(1, 7, .1428571, .0000001);
// Approximate == true


See Also


See the "Double.Epsilon Field" and "Single.Epsilon Field" topics in the MSDN documentation.

If you like the topic and would like to see more, you can get a copy of the book here.