tag:blogger.com,1999:blog-13624811908406651512024-02-08T00:36:21.493-05:00The Brain DumpMarc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.comBlogger17125tag:blogger.com,1999:blog-1362481190840665151.post-12308351296915650652016-11-24T22:33:00.001-05:002016-11-27T12:56:10.864-05:00The easiest way to get a manaully verified Let's Encrypt SSL certificate<a href="https://www.google.com.jm/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwiWs8zI3MLQAhWESyYKHVqWBOEQFggaMAA&url=https%3A%2F%2Fletsencrypt.org%2F&usg=AFQjCNHLSK55fO3YLnyT_sYlhlFMyyILjg&sig2=pVCSNLtu8FCfAX4qTaDvNQ">Let's Encrypt</a> provides free SSL certificates, which is awesome, and <a href="https://certbot.eff.org/">a free tool</a> to automatically verify domain ownership and install the certificate, which is also awesome. Unfortunately I was finding the process to be <b>much less awesome</b> whenever I needed to manually verify my domain ownership. After trying a couple different tools, I found what seems to be the simplest <b>cross-platform</b> way to get a manually verified Let's Encrypt SSL certificate issued.<br />
<br />
This post will walk you through the steps that I used to get my cert for AWS API Gateway, but the same steps should apply for any situation where you need to get a cert using DNS verification instead of HTTP verification (e.g. for an internal tool or appliance that isn't exposed to the internet).<br />
<h4>
</h4>
<h4>
</h4>
<h4>
</h4>
<h4>
TL;DR Version</h4>
<div>
<ol>
<li>Download the <a href="https://github.com/google/acme/releases">Google acme client binary from their GitHub page</a></li>
<li><b><span style="color: #38761d;">acme reg -gen -accept mailto:username@domain.com</span></b></li>
<li><b><span style="color: #38761d;">openssl genrsa -out api.mydomain.com.key 2048</span></b></li>
<li><b><span style="color: #38761d;">acme cert -k api.mydomain.com.key -dns=true api.mydomain.com</span></b></li>
</ol>
<div>
You will be prompted to add a specific TXT record to your domain's DNS entries to verify ownership. After that, your certificate will be generated and downloaded to the folder where you executed the commands.</div>
</div>
<div>
<br /></div>
<h4>
</h4>
<h4>
</h4>
<h4>
Full Version</h4>
First I tried <a href="https://certbot.eff.org/">Certbot</a>, which is considered to be the official Let's Encrypt client, but unfortunately it doesn't run on Windows, it requires a lot of dependencies on Linux, and it displayed a big "WARNING: THIS IS NOT COMPATIBLE AND MIGHT BREAK THINGS" message when I tried to run it on my Amazon Linux EC2 instance. So back to the drawing board.<br />
<br />
Fortunately Let's Encrypt allows you use any of a list of <a href="https://letsencrypt.org/docs/client-options/">available ACME compatible clients</a>, but most of the clients that I looked at failed at least one of the following tests:<br />
<ol>
<li>Created by a developer/company that I trust</li>
<li>Considered production ready by the developer</li>
<li>Works on <b>Windows </b>or <b>Amazon Linux</b> (ideally both)</li>
<li>Has as few dependencies as possible</li>
<li>Supports <b>DNS </b>based verification</li>
</ol>
<a href="https://github.com/google/acme">Google's acme client</a> provides a simple, cross-platform statically-linked binary that has <b>no dependencies</b>. It is written in Go, but Google provides pre-built, platform specific executables so that you don't need to have Go installed. It meets all of my criteria.<br />
<h4>
</h4>
<h4>
</h4>
<h4>
Step 1: Download the <a href="https://github.com/google/acme">google/acme</a> client binary from GitHub</h4>
<div>
<a href="https://github.com/google/acme/releases">Binary releases are available</a> for <b>Windows</b>, <b>Linux </b>(x86 & ARM), and <b>MacOS</b>. A SHA1 checksum file is available on the page as well so you can double check the signature to make sure that your binary was not corrupted. You can put the binary in the folder where you want to generate your certificate for simplicity sake or add it to your PATH.</div>
<div>
<h4>
</h4>
<h4>
</h4>
<h4>
Step 2: Register an account with Let's Encrypt</h4>
</div>
<div>
The next step is to register an account with Let's Encrypt from the command line. This will create a Let's encrypt account key (not to be confused with your certificate's private key) and a config file in the default config directory (~/.config/acme or the Windows equivalent). You can read about what each option does by typing "acme help reg". Your email address will not be verified, so be sure to double check it. It is where your expiration notices will be sent. Also be mindful <b>not to accidentally omit the mailto:</b>.<br />
<br />
<b><span style="color: #38761d;">acme reg -gen -accept mailto:username@domain.com</span></b><br />
<h4>
</h4>
<h4>
</h4>
<h4>
Step 3: Generate a private key for your certificate</h4>
</div>
<div>
While acme itself has no dependencies, the process still has one indirect<b> </b>dependency. Though Google's acme client can generate a private key for you, currently they automatically use the ECDSA signature algorithm and there is no option to specify otherwise (<a href="https://github.com/google/acme/issues/46">I opened an issue</a>). At present AWS API Gateway only supports 2048 bit RSA certs so I had to use openssl to generate my private key. The good news is that openssl is installed by default on most Linux boxes including AWS EC2 instances. Note that you don't need to generate a CSR (Certificate Signing Request), just a private key. Make sure that you put the generated key in to your working folder.</div>
<div>
<b><span style="color: #38761d;"><br /></span></b></div>
<div>
<b><span style="color: #38761d;">openssl genrsa -out api.mydomain.com.key 2048</span></b></div>
<div>
<h4>
</h4>
<h4>
</h4>
<h4>
Step 4: Request a certificate from Let's Encrypt using DNS verification instead of HTTP</h4>
</div>
<div>
One of the more important conditions for me was that I could verify my domain ownership using DNS instead of HTTP. AWS API Gateway requires an SSL certificate in order for you to set up a custom domain (chicken and egg problem). Alternatively I could have hosted a verification file on S3 and pointed my DNS at S3 for verification before pointing it back at API Gateway, but it is much easier for me to just set a TXT record once and be done with it. The "acme cert" command below issues a request for a new certificate based on the private key that you just created, using DNS verification.</div>
<div>
<b><span style="color: #38761d;"><br /></span></b></div>
<div>
<b><span style="color: #38761d;">acme cert -k api.mydomain.com.key -dns=true api.mydomain.com</span></b></div>
<div>
<br />
After running the command you will be prompted with the instructions e.g. <i><b>Add a TXT record for _acme-challenge.api.domain.com with the value "somelongrandomstring" and press enter after it has propagated.</b></i><br />
<br />
You can usually add the DNS TXT record via the web console of the service provider that manages DNS for your domain. After you have made the change you can <a href="https://toolbox.googleapps.com/apps/dig/#TXT/">use this free DNS lookup tool from Google</a> to see if your update has started propagating. Once that is confirmed, hit Enter and a PEM certificate named <b>api.mydomain.com.crt </b>should be created right there in the directory beside the private key. Note that the acme client will automatically bundle your certificate and the Let's Encrypt Intermediate certificate into the same file. Your certificate is the first one in the file.<br />
<br />
The acme client will also return a URL where you can download the certificate, but you can just ignore that if you like. FYI the downloadable version is a binary DER encoded cert.<br />
<h4>
</h4>
<h4>
Free DNS hosting</h4>
If your current DNS host doesn't allow you to set TXT records then it is probably time to switch. <a href="https://www.cloudflare.com/">Cloudflare</a> is actually an awesome free option that most people don't even consider. If you set up your domain under their free plan, but configure it <b>not </b>to route requests through their network, they are basically just a free, reliable DNS hosting service with a great interface.<br />
<h4>
</h4>
<h4>
Try not to lose your account key</h4>
One last thing to note, once you have completed the verification process for a given sub-domain you don't need to go through it again to issue a new certificate as long as you are still using the same Let's Encrypt account key (not to be confused with your certificate's private key). So make sure you keep your account.key and config file safe. They are in the config directory (~/.config/acme).<br />
<h4>
</h4>
<h4>
Renewing your certificate</h4>
The process to "renew" your certificate is really just to issue a new cert with a later expiration date. If you are using the same account key as before then there is no verification step. You can just run the command below in the directory that contains your certificate's private key<br />
<br />
<b><span style="color: #38761d;">acme cert -k </span></b><b><span style="color: #38761d;"><b><span style="color: #38761d;">api.mydomain.com</span></b>.key api.mydomain.com</span></b><br />
<br />
<br />
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com4tag:blogger.com,1999:blog-1362481190840665151.post-1448998436817640632012-10-15T22:25:00.000-05:002012-10-17T21:24:45.955-05:00How to manually "OTA" update your Galaxy Nexus from 4.1.1 to Android 4.1.2<br />
The Android 4.1.2 Jelly Bean update is gradually rolling out OTA (over the air), but if you are impatient you can update manually. I had previously unlocked my boot loader and installed su (superuser), but I otherwise like to keep things as stock possible (no custom ROMs, no kernel hacks, no custom recovery manager). If you have a similar setup then this upgrade is very simple; it can actually be completed without connecting the phone to a computer, so it really is OTA.<br />
<br />
<b>Preconditions:</b><br />
<ol>
<li>You have a GSM Galaxy Nexus (i9250)</li>
<li>You are currently running the latest Android 4.1.1 (JRO03C)</li>
<li>You have the stock <b>yakju or takju </b>ROM. (<a href="https://play.google.com/store/apps/details?id=com.electricsheep.asi" target="_blank">You can use this app to check</a>)</li>
<li>You have root access (<a href="http://androidsu.com/superuser/" target="_blank">su/super user</a> is installed) </li>
<li>You have a terminal application installed (e.g. <a href="https://play.google.com/store/apps/details?id=jackpal.androidterm" target="_blank">Android Terminal Emulator</a>)</li>
<li>You *<b>have not* replaced </b>the stock recovery system/partition with a custom recovery (like Clockwork Mod)</li>
<li>You have 15 - 20 minutes to spare</li>
</ol>
<div>
P.S. Over time, the OTA files for other stock builds will become available (but only for Google supported Nexus devices). You can monitor <a href="http://forum.xda-developers.com/showthread.php?t=1419170" target="_blank">this forum post at xda-developers</a> if you have a non-yakju ROM. <strike>I am personally waiting for the takju file myself so I will update this post when it made available.</strike><br />
<br />
<b>Update:</b> The <b>takju </b>file is now available, the instructions are the same, just substitute this link <a href="http://android.clients.google.com/packages/data/ota/google_takju/06fa1976791d.signed-takju-JZO54K-from-JRO03C.06fa1976.zip"><b>takju</b>-JZO54K-from-JRO03C</a> for the OTA file and this file name: 06fa1976791d.signed-takju-JZO54K-from-JRO03C.06fa1976.zip where relevant.<br />
<br /></div>
<div>
<b>Steps:</b></div>
<div>
<ol>
<li>Download the<a href="http://android.clients.google.com/packages/data/ota/google_takju/5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip" target=""> <b>yakju</b> </a><a href="http://android.clients.google.com/packages/data/ota/google_maguro/24a9a760f32e.signed-yakju-JZO54K-from-JRO03C.24a9a760.zip" target="">4.1.2 (JZO54K) from 4.1.1 (JRO03C)</a> OTA update file directly to your phone (you are downloading directly from Google, not from this blog). The file is about 15MB so you may want to do the download over wifi. </li>
<li>Copy the update file to the /cache folder (this requires super user permission)</li>
<ul>
<li>Open a terminal window</li>
<li>su</li>
<li>cp /sdcard/Download/24a9a760f32e.signed-yakju-JZO54K-from-JRO03C.24a9a760.zip /cache/</li>
</ul>
<li>Boot into recovery mode</li>
<ul>
<li>Power off your phone</li>
<li>While the phone is off, press and hold Volume Up + Volume Down + Power</li>
<li>Use the volume button to scroll through the menu options and press power to select "Recovery Mode"</li>
<li>Once the Recovery Mode screen has come up (<b>green android with red warning sign</b>), <span style="background-color: #f9cb9c;">press Power + Volume Up to bring up the menu</span></li>
</ul>
<li>Install the update from the /cache folder</li>
<ul>
<li>Use the Volume button to select the "apply update from /cache" menu option and press power to invoke it</li>
<li>Use the Volume button to select 24a9a760f32e.signed-yakju-JZO54K-from-JRO03C.24a9a760.zip and press the power button to start the update</li>
<li>Once the install is complete, select "reboot system now"</li>
</ul>
</ol>
<div>
<b><span style="color: red;">Warning: </span>The last upgrade caused me to lose root access</b>. Apparently the setuid bit was removed from /system/bin/su. To prevent this you can try a proactive approach by using an app like <a href="https://play.google.com/store/apps/details?id=org.projectvoodoo.otarootkeeper">OTA RootKeeper</a> or s<a href="http://blog.talawah.net/2012/04/how-to-restore-root-access-after.html" target="_blank">ee my previous for details on how to restore root access</a>.<br />
<ol></ol>
<div>
<b>Discalimer:</b></div>
If you have anything important that isn't stored in the cloud, please back it up before you start. You never know what might go wrong. T<span style="background-color: white;">his "worked for me", but your mileage may vary. I take no responsibility if you phone stops working, explodes or tries to take over the world. Caveat Emptor!</span></div>
</div>
Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com3tag:blogger.com,1999:blog-1362481190840665151.post-15981147318261529092012-07-10T22:18:00.003-05:002012-10-15T22:28:48.836-05:00How to manually "OTA" update your Galaxy Nexus from 4.0.4 to Android 4.1.1 (Jelly Bean) in 4 easy steps<br />
The Android 4.1.1 Jelly Bean update is gradually rolling out OTA (over the air), but if you are impatient you can update manually. I had previously unlocked my boot loader and installed su (superuser), but I otherwise like to keep things as stock possible (no custom ROMs, no kernel hacks, no custom recovery manager). If you have a similar setup then this upgrade is very simple; it can actually be completed without connecting the phone to a computer, so it really is OTA.<br />
<br />
<b>Preconditions:</b><br />
<ol>
<li>You have a GSM Galaxy Nexus (i9250)</li>
<li>You are currently running the latest Android 4.0.4 (IMM76I)</li>
<li>You have the stock <b>takju (update: or yakju) </b>ROM. (<a href="https://play.google.com/store/apps/details?id=com.electricsheep.asi" target="_blank">You can use this app to check</a>)</li>
<li>You have root access (<a href="http://androidsu.com/superuser/" target="_blank">su/super user</a> is installed) </li>
<li>You have a terminal application installed (e.g. <a href="https://play.google.com/store/apps/details?id=jackpal.androidterm" target="_blank">Android Terminal Emulator</a>)</li>
<li>You *<b>have not* replaced </b>the stock recovery system/partition with a custom recovery (like Clockwork Mod)</li>
<li>You have 15 - 20 minutes to spare</li>
</ol>
<div>
P.S. Over time, the OTA files for other stock builds will become available (but only for Google supported Nexus devices). You can monitor <a href="http://forum.xda-developers.com/showthread.php?t=1764536" target="_blank">this forum post at xda-developers</a> if you have a non-yakju or non-takju ROM<br />
<br /></div>
<div>
<b>Steps:</b></div>
<div>
<ol>
<li>Download the<a href="http://android.clients.google.com/packages/data/ota/google_takju/5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip" target=""> <b>takju</b> </a><a href="http://android.clients.google.com/packages/data/ota/google_takju/5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip" target="">4.1.1 (JRO03C) from 4.0.4 (IMM76I) </a><a href="http://android.clients.google.com/packages/data/ota/google_takju/5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip" target="">OTA update file</a> directly to your phone (you are downloading directly from Google, not from this blog). The file is about 147MB so you may want to do the download over wifi. <b><span style="background-color: white;">Update</span><span style="background-color: white;">: The </span><span style="background-color: white;">yakju OTA file is now available</span></b><span style="background-color: white;"><b> as well</b>, the steps are basically the same, you just use the </span><a href="http://android.clients.google.com/packages/data/ota/google_maguro/f946a4120eb1.signed-yakju-JRO03C-from-IMM76I.f946a412.zip" style="background-color: white;" target="_blank"><b>yakju</b> 4.1.1 (<span style="background-color: white;">JRO03C) from</span><span style="background-color: white;"> 4.0.4</span><span style="background-color: white;"> </span></a><span style="background-color: white;"><a href="http://android.clients.google.com/packages/data/ota/google_maguro/f946a4120eb1.signed-yakju-JRO03C-from-IMM76I.f946a412.zip" target="_blank">(IMM76I) OTA file</a> instead.</span></li>
<li>Copy the update file to the /cache folder (this requires super user permission)</li>
<ul>
<li>Open a terminal window</li>
<li>su</li>
<li>cp /sdcard/Download/5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip /cache/</li>
</ul>
<li>Boot into recovery mode</li>
<ul>
<li>Power off your phone</li>
<li>While the phone is off, press and hold Volume Up + Volume Down + Power</li>
<li>Use the volume button to scroll through the menu options and press power to select "Recovery Mode"</li>
<li>Once the Recovery Mode screen has come up (<b>green android with red warning sign</b>), <span style="background-color: orange;">press
Power + Volume Up to bring up the menu</span></li>
</ul>
<li>Install the update from the /cache folder</li>
<ul>
<li>Use the Volume button to select the "apply update from /cache" menu option and press power to invoke it</li>
<li>Use the Volume button to select 5c416e9cf57f.signed-takju-JRO03C-from-IMM76I.5c416e9c.zip and press the power button to start the update</li>
<li>Once the install is complete, select "reboot system now"</li>
</ul>
</ol>
<div>
<b><span style="color: red;">Warning: The upgrade caused me to lose root access</span></b>. Apparently the setuid bit was removed from /system/bin/su. This was fixed by doing the following. It assumes you are familiar with adb, fastboot and Clockwork Mod Recovery. <a href="http://blog.talawah.net/2012/04/how-to-restore-root-access-after.html" target="_blank">See my previous for details on how to restore root access</a>.<br />
<ol></ol>
<div>
<b>Discalimer:</b></div>
If you have anything important that isn't stored in the cloud, please back it up before you start. You never know what might go wrong. T<span style="background-color: white;">his "worked for me", but your mileage may vary. I take no responsibility if you phone stops working, explodes or tries to take over the world. Caveat Emptor!</span></div>
</div>
Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com16tag:blogger.com,1999:blog-1362481190840665151.post-90097028691755926882012-04-19T10:39:00.001-05:002012-10-15T22:29:17.637-05:00How to view the browser history in Chrome for Android<div>
For some bizarre reason the beta version of Chrome for Android doesn't expose a menu option for accessing the browser history. Thankfully, the latest (Apr 17) update includes support for accessing the history via the <b>chrome://history/</b> URL (just type it into the URL bar). You can always bookmark this URL for future reference. <br />
<br />
Hopefully they will add a menu option soon, but till then you can use this workaround.<br />
<br />
<b>Source</b>: <a href="http://code.google.com/p/chromium/issues/detail?id=114066">http://code.google.com/p/chromium/issues/detail?id=114066</a></div>
Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com5tag:blogger.com,1999:blog-1362481190840665151.post-92044383896613068662012-04-04T23:19:00.001-05:002012-04-06T11:23:21.867-05:00How to restore root access after upgrading from Android 4.0.2 to 4.0.4The <a href="http://blog.talawah.net/2012/04/how-to-manually-upgrade-your-galaxy.html" target="_blank">manual OTA upgrade from Android 4.0.2 to 4.0.4</a> on my Galaxy Nexus caused me to lose root access. Apparently the setuid bit was removed from /system/bin/su during the upgrade. This can be easily fixed by following the steps below. It assumes you are familiar with adb, fastboot and Clockwork Mod Recovery.<br />
<br />
<ol>
<li>Power off your phone and boot to the bootloader</li>
<ul>
<li>Volume Up + Volume Down + Power</li>
</ul>
<li>Temporarily boot into the <a href="http://www.clockworkmod.com/rommanager" target="_blank">Clockwork Mod Reovery</a> using fastboot (on the computer) </li>
<ul>
<li>fastboot boot cwmt-recovery-5.8.0.2.maguro.img (or whatever version you are using)</li>
</ul>
<li>Mount /system using Clockwork Mod (on the phone): </li>
<ul>
<li>mounts and storage -> mount /system</li>
</ul>
<li>Chmod su using adb to turn on the setuid bit (on the computer)</li>
<ul>
<li>adb shell chmod 6755 /system/bin/su</li>
<li>adb shell chown root:root
/system/bin/su</li>
<li>adb shell ls -l /system/bin/su (permissions should now be -rwsr-xr-x)</li>
</ul>
<li>Reboot. Super user should be working as expected (and your stock recovery is still intact)</li>
</ol>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-91387263566172598422012-04-01T17:39:00.000-05:002012-04-04T23:25:58.592-05:00How to manually upgrade your Galaxy Nexus to Android 4.0.4 (OTA) in 4 easy stepsThe Android 4.0.4 is gradually rolling out OTA (over the air) , but if you are impatient you can update manually. I had previously unlocked my boot loader and installed su (superuser), but I otherwise like to keep things as stock possible (no custom ROMs, no kernel hacks, no custom recovery manager). If you have a similar setup then this upgrade is very simple; it can actually be completed without connecting the phone to a computer, so it really is OTA.<br />
<br />
<b>Preconditions:</b><br />
<ol>
<li>You have a GSM Galaxy Nexus (i9250)</li>
<li>You are currently running Android 4.0.2 (ICL53F)</li>
<li>You have the stock <b>yakju </b>ROM (<a href="https://play.google.com/store/apps/details?id=de.cbruegg.officialupdate" target="_blank">How to tell</a>)</li>
<li>Your bootloader is unlocked
</li>
<li>You have root access (<a href="http://androidsu.com/superuser/" target="_blank">su/super user</a> is installed) </li>
<li>You have a terminal application installed (e.g. <a href="https://play.google.com/store/apps/details?id=jackpal.androidterm" target="_blank">Android Terminal Emulator</a>)</li>
<li>You *<b>have not* replaced </b>the stock recovery system/partition with a custom recovery (like Clockwork Mod)</li>
<li>You have 15 - 20 minutes to spare</li>
</ol>
<div>
<b>Steps:</b></div>
<div>
<ol>
<li>Download the<a href="http://android.clients.google.com/packages/data/ota/google_maguro/7f97fbc19417.signed-yakju-IMM76D-from-ICL53F.7f97fbc1.zip" target="_blank"> OTA update file for Android 4.0.2 (ICL53F) -> 4.0.4 (IMM76D)</a> directly to your phone (you are downloading directly from Google, not from this blog). The file is about 40MB so you may want to do the download over wifi.</li>
<li>Copy the update file to the /cache folder (this requires super user permission)</li>
<ul>
<li>Open a terminal window
</li>
<li>su</li>
<li>cp /sdcard/Download/7f97fbc19417.signed-yakju-IMM76D-from-ICL53F.7f97fbc1e.zip /cache/</li>
</ul>
<li>Boot into recovery mode</li>
<ul>
<li>Power off your phone
</li>
<li>While the phone is off, press and hold Volume Up + Volume Down + Power</li>
<li>Use the volume button to scroll through the menu options and press power to select "Recovery Mode"</li>
<li>Once the Recovery Mode screen has come up (green android with red warning sign), press Volume Up + Power to bring up the menu</li>
</ul>
<li>Install the update from the /cache folder</li>
<ul>
<li>Use the Volume button to select the "apply update from /cache" menu option and press power to invoke it</li>
<li>Use the Volume button to select
7f97fbc19417.signed-yakju-IMM76D-from-ICL53F.7f97fbc1e.zip and press the power button to start the update</li>
<li>Once the install is complete, select "reboot system now"</li>
</ul>
</ol>
<div>
<span style="color: red;">Warning: </span>The upgrade caused me to lose root access. Apparently the setuid bit was removed from /system/bin/su. This was fixed by doing the following. It assumes you are familiar with adb, fastboot and Clockwork Mod Recovery. <a href="http://blog.talawah.net/2012/04/how-to-restore-root-access-after.html" target="_blank">See my next post for details on how to restore root access</a>.<br />
<ol>
</ol>
<div>
<b>Discalimer:</b></div>
If you have anything important that isn't stored in the cloud, please back it up before you start. You never know what might go wrong. If something does go terribly wrong, and you need to start over from scratch. The <a href="http://code.google.com/android/nexus/images.html#yakjuimm76d" target="_blank">Android 4.0.4 Factory Image for the Galaxy Nexus</a> is now available as well.</div>
</div>
<div>
<br /></div>
<div>
Oh, and before you go, this "worked for me", but your mileage may vary. I take no responsibility if you phone stops working, explodes or tries to take over the world. Caveat Emptor!</div>
<div>
<br /></div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com4tag:blogger.com,1999:blog-1362481190840665151.post-81016755462219530922011-04-11T22:19:00.027-05:002015-11-01T10:47:14.860-05:00Gavin King unveils Red Hat's Java killer successor: The Ceylon Project<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzF2oeMekM5eqGAgq7k6h3bEZrnOSJt9JykO2DfjiOSZPtN7PMxYa9k5DnRL_1yKp3XIfmfE7b_4Oi_sexcQf_RAMqZoDN1reR4QZ1TmHKBDk-S-NW205a6Hv-nGN5ry5oQVdtACwXz5_s/s1600/Java.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzF2oeMekM5eqGAgq7k6h3bEZrnOSJt9JykO2DfjiOSZPtN7PMxYa9k5DnRL_1yKp3XIfmfE7b_4Oi_sexcQf_RAMqZoDN1reR4QZ1TmHKBDk-S-NW205a6Hv-nGN5ry5oQVdtACwXz5_s/s200/Java.png" style="border-width: 0;" width="200" /></a><a href="http://in.relation.to/Bloggers/Gavin">Gavin King</a> of Red Hat/Hibernate/Seam fame recently unveiled the top secret project that he has been working on over the past two years, a new language and SDK designed to replace Java in the enterprise. The project came out of hiding without much fanfare or publicity at <a href="http://www.qconferences.com/">QCon</a> <a href="http://www.qconbeijing.com/">Beijing</a> in a keynote titled "<a href="http://www.qconbeijing.com/ShowNews.aspx?id=65">The Ceylon Project - the next generation of Java language?</a>". It took a fair amount of Google translate for me to get to the relevant <a href="http://www.qconbeijing.com/download/Gavin%20keynote.pdf">slide</a> <a href="http://www.qconbeijing.com/download/Gavin%20session.pdf">decks</a>, (Embedded <a href="http://blog.talawah.net/2011/04/gavin-king-unviels-red-hats-top-secret.html#slides">below</a>) but once I found them, the information was all there in plain English.<br />
<br />
According to the slides, the Ceylon Project aims to create a programming language and SDK for business computing, designed with an eye to the successes and failures of the Java. It is built to run on the JVM, uses static typing, and supports high-order functions, while maintaining a strong focus on being easy learn and easy to read.<br />
<br />
If you ask, me it sounds like just what the doctor ordered. Java is great, it is an extremely popular, open(ish), robust, readable language that as a ton of superb libraries. However it is burdened by its legacy and cant seem to evolve enough to match the levels productivity and fun seen in more recently developed languages like Groovy, Python and C#, with C# being the most apropos comparison due to its statics typing and enterprise focus.<br />
<br />
I've been eagerly waiting on the tech media to devour the details of this controversial effort and spew forth a riveting combination of analysis and hypothesis. Up till now, there has been nothing but crickets chirping so I figured I'd get the ball rolling with a layman's blog post.<br />
<div class="fullpost">
<h4>
</h4>
<h4>
What I like</h4>
<ol>
<li>The overall vision: learn from Java's mistakes, keep the good, ditch the bad</li>
<li>The focus on readability and ease of learning/use</li>
<li>Static Typing (find errors at compile time, not run time)</li>
<li>No “special” types, everything is an object</li>
<li>Named and Optional parameters (<a href="http://en.wikipedia.org/wiki/C_Sharp_4.0">C# 4.0</a>)<br />
</li>
<li><a href="http://en.wikipedia.org/wiki/Nullable_type">Nullable types</a> (<a href="http://en.wikipedia.org/wiki/C_Sharp_2.0">C# 2.0</a>)<br />
</li>
<li>No need for explicit getter/setters until you are ready for them (<a href="http://en.wikipedia.org/wiki/C_Sharp_3.0">C# 3.0</a>)</li>
<li>Type inference via the "local" keyword (C# 3.0 "var")</li>
<li>Sequences (arrays) and their accompanying <span id="hotword"><span id="hotword" name="hotword" style="background-color: transparent; cursor: default;"></span></span>syntactic sugariness (C# 3.0)</li>
<li>Straight-forward implementation of <a href="http://en.wikipedia.org/wiki/Higher-order_function">higher-order functions</a></li>
</ol>
<h4>
Things that may grow on me</h4>
<ol>
<li>The new assignment operator ":="</li>
<li>The new string interpolation syntax</li>
<li>The new types: Natural, Numeric, etc</li>
<li>Classes, Methods and Attributes looking almost identical...can't decide if that is good or bad<br />
</li>
</ol>
<h4>
Things that make me go hmmm</h4>
<ol>
<li>All the new keywords for existing concepts: shared, satisfies, assign, variable, local<br />
</li>
<li>The simplification of the public/protected/private access/visibility levels</li>
<li>The Smalltalk-like syntax for inline functions as parameters</li>
</ol>
<h4>
Things I didn't fully get</h4>
<ol>
<li>The Closure and block structure examples had some things that were a little puzzling. e.g. the "name" attribute of type "Name" returns "Name(“Gavin”, “King”)"</li>
<li>Some of the more intricate details of the type system..<br />
</li>
</ol>
<br />
While I am still waiting to hear some opinionated analysis from people who study theses things for a living, I am cautiously optimistic about the direction things are headed. I think the Java/Open Source/Programming world needs a language like this. Nevertheless, there are a number of factors that could affect whether or not the project gains momentum.<br />
<br />
For one, while a lot of work has clearly gone into the language design, a production ready compiler and SDK a clearly still a ways off. That means that there is still a lot of work left to be done, especially if they plan to try and address the modularity issues that they claim Maven and OSGI have failed to solve. I would also love to see how Ceylon handles integration with existing Java code/libraries...smooth integration/compatibility is key for any pretender to the throne.<br />
<br />
Additionally, I don't think Red Hat can do it alone, it is going to take buy in from the Java/Open Source community to really get things going. Google and Apache are two names that spring to mind, but that then immediately raises the question about where Ceylon comes into play in the ongoing power struggle between Oracle, Google and Apache over the rights to use Java without limitation. Could Ceylon become a key piece in the puzzle and spur an influx of supporters? Or will it simply raise Oracle's ire and force IBM to keep its distance?<br />
<br />
I for one welcome our new <a href="http://en.wikipedia.org/wiki/Cylon_%28Battlestar_Galactica%29"><s>Cylon</s></a> <a href="http://en.wikipedia.org/wiki/Ceylon_%28disambiguation%29">Ceylon</a> overlords. Its going to be interesting to watch and see how it all plays out.<br />
<br />
<b>Update: </b><a href="http://in.relation.to/Bloggers/Ceylon">Gavin has posted a response</a> highlighting two reasons for not reusing one of the many existing languages targeting the JVM (1) A built in solution for "defining user interfaces and structured data using a typesafe, hierarchical syntax" i.e. less dependency on XML (2) "The extremely outdated class libraries that form the Java SE SDK are riddled with problems. Developing a great SDK is a top priority of the project."<br />
<br />
<b>Update 2</b>: <a href="http://www.infoq.com/news/2011/04/ceylon">InfoQ has posted an article</a> which includes a Q&A with Gavin King.<br />
<br />
Embedded slides courtesy of <a href="http://www.slideshare.net/devstonez" id="slides" name="slides">devstonez</a><br />
<div id="__ss_7611390" style="width: 510px;">
<b style="display: block; margin: 12px 0 4px;"><a href="http://www.slideshare.net/devstonez/introducing-the-ceylon-project-gavin-king-presentation-at-qcon-beijing-2011" title="Introducing the Ceylon Project - Gavin King presentation at QCon Beijing 2011">Introducing the Ceylon Project - Gavin King presentation at QCon Beijing 2011</a></b> <iframe frameborder="0" height="426" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/7611390?rel=0" width="510"></iframe> <br />
<div style="padding: 5px 0 12px;">
View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/devstonez">devstonez</a> </div>
</div>
<br />
<div id="__ss_7611835" style="width: 510px;">
<b style="display: block; margin: 12px 0 4px;"><a href="http://www.slideshare.net/devstonez/the-ceylon-type-system-gavin-king-presentation-at-qcon-beijing-2011" title="The Ceylon Type System - Gavin King presentation at QCon Beijing 2011">The Ceylon Type System - Gavin King presentation at QCon Beijing 2011</a></b> <iframe frameborder="0" height="426" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/7611835?rel=0" width="510"></iframe> <br />
<div style="padding: 5px 0 12px;">
View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/devstonez">devstonez</a> </div>
</div>
<br /></div>
Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com103tag:blogger.com,1999:blog-1362481190840665151.post-65766847537738138402010-11-04T18:33:00.004-05:002010-11-04T20:57:01.218-05:00Red Hat set to unveil RHEL 6...but is there more?Red Hat has announced that their executive team will be hosting a <a href="http://www.redhat.com/promo/webcast2010/">technology webcast on November 10</a>. Chances are they are going to launch (or at least announce) Red Hat Enterprise Linux 6 which <a href="http://press.redhat.com/2010/10/18/red-hat-enterprise-linux-6-release-candidate-available-to-partners/">reached the Release Candidate stage</a> a couple weeks ago. I am also hoping that they will use the opportunity to lay out a comprehensive vision for what they plan to do with their Virtualization, Identity Management and Systems Management/Monitoring technologies.<br /><br />There are a number of Red Hat projects out there that sounded great when I first heard about them but have yet to reach their full potential: <a href="http://ovirt.org/">oVirt</a>, <a href="http://thincrust.org/">Thincrust</a>, <a href="https://fedorahosted.org/cobbler/">Cobbler</a>, <a href="http://spacewalk.redhat.com/">Spacewalk</a>, <a href="http://rhq-project.org/">RHQ </a>and <a href="http://freeipa.org/">FreeIPA</a> are just a few<a href="http://ovirt.org/" target="_blank"></a>. None of these individual ideas have been to be integrated into a larger plan and some of them seem to overlap with products like <a href="http://www.redhat.com/virtualization/rhev/server/">RHEV</a> and <a href="http://www.redhat.com/mrg/">MRG</a>.<br /><br />If combined, these tools could form the basis for a powerful Cloud Computing platform; one that could scale from a modest server room at an SMB to a world class Data Center. All the little pieces are there: virtualization management, appliance OS, provisioning server, systems management/monitoring and identity management, but without a unifying vision and a strong commitment, they are just a bunch of semi-interesting open source projects.<br /><br /><div class="fullpost">What I find even more concerning is that Red Hat's latest initiatives like <a href="http://deltacloud.org/">Deltacloud</a> and <a href="http://www.redhat.com/solutions/cloud/foundations/">Cloud Foundations</a>, and their complete absence from <a href="http://www.openstack.org/">OpenStack</a> make it seem like they are more interested in creating APIs and technology blueprints than they are in delivering the integrated technology themselves.<br /><br />I am hoping that this was all just part of the plan, and that they have been patiently waiting on RHEL 6 so that they could use it as the foundation of their new cloud platform. I am hoping that they will finally show us that they did actually have a plan all along. I guess I'll have to wait till November 10 to find out.<br /><br /></div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-77260803348830509492010-01-13T19:02:00.006-05:002010-01-14T09:53:40.107-05:00VMWare: the next big Open Source company?With the <a href="http://www.vmware.com/company/news/releases/zimbra.html">acquisition of Zimbra</a> VMWare has very clearly signaled that it is no longer satisfied to lead the (soon to be commoditized) virtualization infrastructure market, and that it intends to move "up the stack".<br /><br />Zimbra always seemed like awkward pairing with Yahoo! and I have long wondered who might be a better parent company for them. Sun being the new poster child for Open Source seemed like a potential suitor until they got bought out by Oracle. Red Hat's name is synonymous with Open Source, but their laser-like focus on infrastructure has ruled out many potential acquisitions. VMWare never even crossed my mind, but now that I think about it, this might just be the beginning...<br /><br />VMWare is clearly interested in making a name for itself outside of virtualization, and what better way to do that than to a acquire a bunch of disruptive, high potential Open Source companies? They already acquired SpringSource (Web/Java application framework/platform) and by extension Hyperic (infrastructure management and monitoring) back in 2009, but compared to those two Zimbra is a much more daring step away from their traditional stomping ground.<br /><br />So with a new path laid out ahead of them, who else might they acquire? Here are some ideas:<br /><br /><div class="fullpost"><a href="http://www.jivesoftware.com/">Jive Software</a> - Not strictly an Open Source company but it has strong ties to the community. Jive's main product, <a href="http://www.jivesoftware.com/products">Jive SBS</a> is an enterprise collaboration tool used to power internal and external communities (forums, blogs, document sharing, enterprise social networking) for some of the biggest names out there including Nike, Intel and VMWare. Think Sharepoint, but built from the ground up with end-users in mind.<br /><br />One of Jive's other big products <a href="http://www.igniterealtime.org/projects/openfire/index.jsp">Openfire</a> is an Open Source XMPP based IM/Chat Server that is used by many other products including Zimbra and SBS.<br /><br /><a href="http://www.sipfoundry.org/">SipXecs </a>- SipX is an Open Source enterprise PBX system that has long lived in the shadow of its (technically inferior, but more feature packed) cousin Asterisk. SipX has come a long way in recent times and its upcoming 4.2 release promises some very interesting features including the ability to use an IMAP server (like say Zimbra) as the primary store for voicemail and specialized integration with Openfire and DimDim. Alas SipX is owned by the not so recently bankrupt Nortel Networks and is future seems uncertain (is Avaya getting them?). It would be great to see them snapped up by a Financially strong, open source friendly company.<br /><br /><a href="http://www.dimdim.com/">DimDim</a> - DimDim's web conferencing software is powered by a number of different Open Source components. While the company seems to periodically (once a year or so) toss code over the wall, I wouldn't go as far as calling them open source (there is no community to speak off). Nevertheless they have developed a very interesting and disruptive piece of software and it would be nice to see additional development resources and a stronger community around the product.<br /><br />Zimbra, Jive (SBS and Openfire), SipX, and DimDim are all good products on their own, but together they would form a powerful and flexible Unified Communication and Collaboration platform that could rival and even outpace similar offerings from <a href="http://www.microsoft.com/uc/en/us/default.aspx">Microsoft</a> and <a href="http://www-01.ibm.com/software/lotus/unified-communications/">IBM</a>. I have often wondered if any company would have the vision and resources to pull all the pieces together. At one point I hoped it might be Sun or Red Hat; now it is looking more and more like VMWare might be that company.<br /><br /></div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com2tag:blogger.com,1999:blog-1362481190840665151.post-28686419858377308622009-04-04T17:06:00.003-05:002009-04-07T22:46:53.140-05:00jOra, an excellent Oracle Development plugin for EclipseMy new job has me spending more and more time working with Oracle and PL/SQL. Up until recently, I had been getting by with the functionality provided by the <a href="http://www.eclipse.org/datatools/">Eclipse Data Tools Platform</a><span class="topstoryhead">, but I have been <span style="text-decoration: underline;"></span><a href="http://www.eclipse.org/newsportal/article.php?id=1456&group=eclipse.dtp#1456">having issues</a> using it more recently.<br /><br />The other day I came across <a href="http://jora.luenasoft.de/index_en.html">jOra,</a> an Oracle specific database browser/editor plugin for Eclipse. It is </span><span class="pn-normal">much more powerful and flexible than the datatools plugin. Unlike datatools, it supports using synonyms for code completion; this is very useful if you need to work with a lot of objects that don't belong to your schema (assuming they have synonyms).</span> Another nice feature is that it lets you bookmark frequently used table/views/procedures so that you can quickly get to them without digging through the schema.<br /><br />If you use Eclipse and need to work with Oracle and PL/SQL you should <a href="http://jora.luenasoft.de/index_en.html">check it out</a>. <span class="topstoryhead"></span>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-67979980232378204892009-03-18T15:52:00.010-05:002009-03-20T18:13:00.626-05:00Why I don't want IBM to buy SunThe grapevine is abuzz with rumors that <a href="http://www.nytimes.com/2009/03/19/technology/companies/19sun.html?_r=1&ref=technology">IBM is offering to acquire Sun for about $6.5 billion</a>. Want to know my opinion? I don't like it one bit. While IBM benefits by having a bigger piece of the server market, the two companies have a lot of overlapping areas and they can't all get priority. AIX or Solaris? Websphere or Glassfish? Eclipse or Netbeans? Power or Sparc? But those clashes aren't the real issues as far as I am concerned. The real issue is that if IBM acquires Sun, innovation will be stifled.<h4>Stifling Innovation</h4> When I say that innovation will be stifled, I am not talking about technical innovation fallout as a result of a culture clash. While there will no doubt be some issues when IBM's east coast, button down, all-business approach meets Sun's west coast, <a href="http://en.wikipedia.org/wiki/Jonathan_I._Schwartz">pony-tail wearing</a>, engineer-centric style, that is not the point I am trying to address. The area of innovation I am worried about is that of Sun's open source business strategy.<br /><h4>IBM is not an "open source company"</h4>No one can deny that IBM is a friend to open source. Their backing of Linux has been monumentally beneficial; but when all is said and done, IBM is a proprietary software company. Their software integrates with open source and builds upon open source, but in general it isn't<span style="font-weight: bold;"> </span>open source. IBM's software strategy is actually more similar to Oracle's than it is to Sun's.<br /><h4>Let the Sun shine</h4> The software world is still experimenting and trying to find the best way to make money with open source. Sun has the potential to lead the charge in a way that Red Hat can't. Sun's CEO has outlined a clear <a href="http://blogs.sun.com/jonathan/entry/commercial_innovation_3_of_4">strategic vision</a> for how Sun will make money with open source software:<br /><ol><li><span style="font-weight: bold;">Software</span>: Selling support and services to those that find free to be a more expensive alternative than commercially supported</li><li><span style="font-weight: bold;">Hardware</span>: Disrupting the proprietary Storage and Networking markets by selling compelling, <a href="http://www.sun.com/storage/disk_systems/unified_storage/">integrated appliances</a> based on general purpose hardware and open source software.</li><li><span style="font-weight: bold;">The Network is the computer</span>: Relaunching <a href="http://www.network.com/">network.com</a> as cloud computing platform that is:<ul><li>Open: Creative Commons licensed, <a href="http://kenai.com/projects/suncloudapis/pages/Home">community reviewed APIs</a>.</li><li>Enterprise-friendly: lets you create interoperable <span style="font-style: italic;">private </span>clouds in your datacenter based on technology acquired from <a href="http://www.sun.com/software/q-layer/">Q-layer</a>.</li><li>Developer friendly: integrates with Virtualbox & Netbeans, runs MySQL & Glassfish.</li></ul></li></ol>I think this is a winning strategy and I would love to see it work, but I fear it may not survive the take over. Sun's strategy relies very heavily on the fact they have "<a href="http://weblog.infoworld.com/openresource/archives/2006/11/you_have_to_bur.html">burned the boats</a>" that carried them away from proprietary software and marched forth into a brave new world of open source. The arrival of IBMs fleet would make all too easy for them return to old, comfortable, proprietary ways.<br /><br />They say that necessity is the mother of all inventions, looking at Sun's stock price they <span style="font-style: italic;">need </span>to show the world that they have (or can hire) the ability to execute. The recession presents an opportunity for them as CIOs are forced to reevaluate their existing software contracts. Sun has already trimmed down its work-force to make sure that they themselves can survive in the medium term. The only question is whether or not shareholders are patient enough to wait for the results.<br /><div class="fullpost"><h4>Perhaps another suitor</h4> I am not opposed to <span style="font-style: italic;">somebody </span>acquiring Sun, as long as the acquisition doesn't change the current strategy. I have heard Fujitsu mentioned as an possibility; I can't claim to know much about them but Sun and Fujitsu seem to collaborate at a number of levels ranging from sales and support to <a href="http://en.wikipedia.org/wiki/SPARC_Enterprise">processor/server design</a>. In Jamaica, Fujitsu is the principal authorized reseller of Sun Servers.<br /><h4>Yahoo! off the table</h4>In spite of the fact that <a href="http://blog.talawah.net/2009/02/why-yahoo-should-buy-sun.html">I have been rooting for the merger</a>, I don't see a Yahoo!/Sun deal happening any time soon. Now that IBM has stepped up to the plate, investors would surely scoff at an offer from the wounded internet giant. If Sun and Yahoo! can get their acts together independently I would still like to see at least some kind of collaboration down the line. Sun has stepped up to the plate and made its <a href="http://www.network.com/">Infrastructure-as-a-service</a> plans clear. Yahoo! just needs to focus on creating its Software-as-a-Service (starting with Zimbra) and Platform-as-a-Service (built around PHP/MySQL and Hadoop) offerings.<br /><br />I hope to blog some more about Zimbra and some potential companion products soon. The world needs an open source challenger to go up against Microsoft, Cisco and IBM in the Unified Communications and Collaboration market.</div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com2tag:blogger.com,1999:blog-1362481190840665151.post-32674109751875635762009-03-12T23:47:00.014-05:002009-03-16T11:47:51.715-05:00Sun takes aim at Cisco, moves toward converged datacenterSun CEO Jonathan Schwartz has a interesting series of blog posts outlining Sun's major strategic imperatives. In <a href="http://blogs.sun.com/jonathan/entry/commercial_innovation_3_of_4">his latest post</a> Schwartz announces (in a casual, offhand manner) that Sun plans to compete directly with Cisco by selling Solaris based routers and networking gear built on general purpose hardware:<br /><blockquote>"...general purpose microprocessors and operating systems are now fast enough to eliminate the need for special purpose devices. That means you can build a router out of a server - notice you cannot build a server out of a router, try as hard as you like...<br /><br />...we now build our entire line of storage systems from general purpose server parts, including Solaris and ZFS, our open source file system ... We are planning a similar line of networking platforms, based around the silicon and software you can already find in our portfolio."<br /></blockquote><span style="font-weight: bold;">Cisco takes aim at Sun</span><br />That line about not being able to "build a server out of a router" is probably aimed at <a href="http://www.internetnews.com/infra/article.php/10796_3802651_1">California,</a> a highly anticipated project that will see Cisco enter the server market (kinda) by delivering a unified Blade Server/Networking/Virtualization/Storage product in concert with partners like VMWare. Project California is expected to launch on March 16.<br /><br />It seems like both Cisco and Sun have their minds set on the same thing, owning the datacenter. Sun intends to disrupt the proprietary storage and networking markets using a converged, Solaris based systems approach.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBEk59lT2sq_eipNzVhowdAERkxmfK8zqcBIp42gkwUkjE1CMjhqhWhEny3ehYRdIWG2Uoa-ajD30v1PxieTkBlc7ZRsqA8XLeH6a2pTh6kvOyTHLXEHX_LFWNlgNggGY2cbdS_ogzoMYq/s1600-h/datacente.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 308px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBEk59lT2sq_eipNzVhowdAERkxmfK8zqcBIp42gkwUkjE1CMjhqhWhEny3ehYRdIWG2Uoa-ajD30v1PxieTkBlc7ZRsqA8XLeH6a2pTh6kvOyTHLXEHX_LFWNlgNggGY2cbdS_ogzoMYq/s400/datacente.png" alt="" id="BLOGGER_PHOTO_ID_5312543114200501426" border="0" /></a><span style="float: right; text-align: right; clear: both; width: 250px; margin-right: 22px;font-size:smaller;" >Image courtesy of <a href="http://blogs.sun.com/jonathan/entry/commercial_innovation_3_of_4" target="_blank">Sun</a></span><div class="fullpost"><br /><h4>Solaris as a networking platform</h4>The idea of running open source networking software on commodity hardware isn't exactly new. <a href="http://www.vyatta.com/index.php">Vyatta</a>, whose line of networking products are based on Linux, just released version 5 of their platform this week. However Sun has its own set of tools, and as usual, it thinks they are superior. <a href="http://opensolaris.org/os/project/crossbow/">Crossbow</a> is one of the key underlying technologies that <a href="http://blogs.sun.com/sunay/entry/crossbow_enables_an_open_networking">makes Solaris a networking platform</a>. Sun hopes that Crossbow can do for networking what <span style="text-decoration: underline;"></span><a href="http://en.wikipedia.org/wiki/ZFS">ZFS</a> did for storage. Like ZFS, Crossbow has been under development at Sun for many years. It was deemed mature enough to be merged into OpenSolaris in December of last year.<br /><br />It is important to note that Sun will not be delivering some loosely coupled set of hardware and open source tools for sysadmins to mix and match. Looking it their current "<a href="http://www.sun.com/storage/disk_systems/unified_storage/">Open Storage</a>" product line, it is clear that they plan to build tightly integrated purpose specific appliances.<br /><br />Nevertheless, the underlying components will be commodity servers and open source tools. This means that a tech savvy start-up can take these tools and use them to build their own commercial solutions. This is good for Sun in two ways: (1) It drives their technology into the lower end of the market and creates a migration path to the high-end (2) Sun can focus on selling to its target market while entrepreneurs try out new ideas. If an idea looks promising, Sun can acquire the start-up. The acquisition process is made much smoother by the fact that the company is already using Sun technologies.<br /><h4>Using network.com to eat their own dogfood</h4>Even before the first customer signs up, we can expect Sun to use their own datacenters as the proving ground these technologies. I expect that the relaunched of <a href="http://www.network.com/">network.com</a>, Sun's born-again cloud computing initiative, will be the first showcase we see. <del>Interestingly enough it is also scheduled to launch on March 16</del>...sorry, it is actually supposed to launch on March 18.<br /><h4>So who will win?</h4>I think Sun's vision is correct, the datacenter is ripe for convergence and commoditization. I think Sun's potential is great, they have the hardware, the software and the engineers. I think the recession works in their favor, companies now have to seriously reevaluate costs and make sure they are getting value for money.<br /><br />Unfortunately there are two major issues Sun has to get past. (1) Financially speaking, they are not in the best shape right now, and this strategy is more of a marathon than a sprint. Will investors be patient enough to see the finish line? (2) Sun has a history of having great vision, but failing to execute (*cough* original network.com *cough*). Unfortunately for Sun, Cisco's balance sheet and their ability to execute are two of their greatest strengths.</div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-11342033380099608622009-03-04T22:16:00.015-05:002009-03-05T15:41:32.796-05:00Intel's Xeon "Nehalem" Processor. The Empire Strikes Back.Intel is set to officially launch their new line of Xeon processors this month. This release is the latest "tock" in Intel's <a href="http://www.intel.com/technology/tick-tock/index.htm">tick-tock development model</a>, and is based on a new microarchitecture code-named Nehalem. Intel has been following the tick-tock model (refine existing architecture one year/create new architecture the next year) for the last few years so technically this release shouldn't be big news, but based on all the buzz being generated, it looks like this going to be a really loud tock. Both Sun and RedHat have specifically mention Nehalem support in their latest release: <a href="http://www.sun.com/aboutsun/pr/2008-12/sunflash.20081210.1.xml">OpenSolaris 2008.11</a> and <a href="http://www.redhat.com/about/news/prarchive/2009/rhel_5_3.html">RHEL 5.3</a>. <a href="http://www.citrix.com/English/NE/news/news.asp?newsID=1680834">Citrix</a> and <a href="http://www.virtualization.info/2008/08/vmware-unveils-vmdirectpath-technology.html">VMware</a> have also voiced support.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQPgvmr8tlrbx1CheiAwn5XnWkTDWhKr2kyjICKNX8LeQlntUI4jxLCLkZv2KQ02eTaqzjW8C2R_79XeMHhoIoK-EK5eH58Mh9tqyUffuJNV8RBMXX5bhikGRJ-uXBhPhVnDdY2ajoHSoW/s1600-h/nehalem.png"><img style="border: 0pt none ; margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 325px; height: 264px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQPgvmr8tlrbx1CheiAwn5XnWkTDWhKr2kyjICKNX8LeQlntUI4jxLCLkZv2KQ02eTaqzjW8C2R_79XeMHhoIoK-EK5eH58Mh9tqyUffuJNV8RBMXX5bhikGRJ-uXBhPhVnDdY2ajoHSoW/s400/nehalem.png" alt="" id="BLOGGER_PHOTO_ID_5309576793290854850" border="0" /></a><span style="float: right; text-align: right; clear: both; width: 250px; margin-right: 58px;font-size:smaller;" >Image courtesy of <a href="http://www.apple.com/macpro/features/processor.html" target="_blank">Apple</a></span><br /><h4>Intel vs AMD</h4>Since the launch of AMD's Opteron line in 2003, Intel has struggled to regain performance leadership in the server CPU market. The two have fought back and forth feverishly, and while Intel has still managed to (<a href="http://en.wikipedia.org/wiki/AMD_v._Intel">controversially</a>) dominate in terms of market share and profitability, the performance question has been a topic of much debate. With the launch of the Nehalem microarchitecture Intel is seeking to definitively reclaim its crown.<br /><div class="fullpost"><h4>Features</h4>To the careful observer many the Nehalem's "new" features don't seem very new at all. Most of them are features that AMD implemented several years ago.<br /><br /><span style="font-weight: bold;">Multi-core, Single die</span> - The Nehalem Xeons will sport 4 (Xeon EP) or 8 (Xeon EX) cores, all on a single die. Previous quad-core Xeon processors had two pair of cores on separate dies, which meant that some cached data had to travel outside the processor to get from core to core. The new architecture is more efficient. AMD has being using this approach all along.<br /><br /><span style="font-weight: bold;">Integrated Memory Controller</span> - Rather than connecting system memory to a processor through a separate I/O controller, the Nehalem features an integrated memory controller. This means faster access to data stored in memory, and significantly reduced latency. This was one of the AMD's major features when it launched the Opteron...six years ago.<br /><br /><span style="font-weight: bold;">QuickPath Interconnect</span> - In multiprocessor configurations, <a href="http://en.wikipedia.org/wiki/Intel_QuickPath_Interconnect">QuickPath</a> acts as a high-speed interconnect between processors (and each processors memory bank). With the introduction of QuickPath, Xeons can now take advantage of <a href="http://en.wikipedia.org/wiki/Non-Uniform_Memory_Access">Non-Uniform Memory Access</a> which allows them to scale better as the number of processors increases. QuickPath also acts as the transport for connecting the processors to the motheboard's <a href="http://en.wikipedia.org/wiki/Southbridge_%28computing%29">Southtbridge</a> or IO Hub. AMD calls this <a href="http://en.wikipedia.org/wiki/HyperTransport">HyperTransport</a>.<br /><br /><span style="font-weight: bold;">Hyper-threading</span> - Now here is something they didn't copy from AMD; nevertheless it isn't exactly new either. <a href="http://en.wikipedia.org/wiki/Hyper-threading">Hyper-threading</a> allows two threads to run simultaneously on each core. So an 4-core Xeon-EP presents 8 virtual cores to an operating system. This is an Intel technology that made its debut with the Pentium 4, but was since shelved. Looks like it is back and performing better than ever.<br /><br /><span style="font-weight: bold;">Virtulaization</span> - The Nehalem introduces two important virtualization features, Extended Page Tables, which significanlty reduces the overhead involved in virtualizing memory access. (AMD calls this nested page tables and has support in its newer processors) and VT-d, which allows virtual machines to be given direct access to physical devices ( AMD calls this IOMMU and expects to have support by 2H 2009). Technically this is actually a motherboard chipset feature.<br /><h4>The Numbers</h4>Now that Intel and AMD seem to be reaching feature parity in terms of their overall chip architectures we will probably see even more fierce competition. But if Intel is basically just playing catch up to AMD in terms of architecture, what is the big deal? In one word, performance.<br /><br />While Nehalem desktop chip (Core i7) performance improvements are in the 15-20% range, on the server it is whole different story. This <a href="http://www.anandtech.com/weblog/showpost.aspx?i=532">HP/SAP benchmark</a> shows the Xeon Nehalem beating its predecessor by about <span style="font-weight: bold;">100%</span>.<br /><br />Here is what Red Hat had to say: <blockquote>"In internal testing, the Red Hat Engineering Performance Group has measured exceptional gains with the new Nehalem processors, with unaudited results showing gains of <span style="font-weight: bold;">1.7x</span> for commercial applications and gains up to <span style="font-weight: bold;">3.5x</span> for high-performance technical computing applications compared to the previous generation of Intel processors."</blockquote>Apple got the jump on the big server vendors and announced on Tuesday that it is shipping <a href="http://www.apple.com/macpro/features/processor.html">Nehalem Xeons in the Mac Pro</a> workstation line. Here are their numbers:<br /><blockquote>"The result is fast access to cache data and greater application performance. Combine that with the other technological advances and you get a Mac Pro that’s up to <span style="font-weight: bold;">1.9x</span> faster than the previous generation."<br /><br />"The integrated memory controller, along with fast 1066MHz DDR3 ECC SDRAM, also gives Mac Pro up to a <span style="font-weight: bold;">2.4x</span> increase in memory bandwidth over previous generations."</blockquote>AMD should benefit for some of the software optimization being made for the Nehalem, but come the end of March it looks like Intel will have a clear all-around lead for the first time in a long time.<br /><br />The Empire has struck back, and it only has one question for AMD. <a href="http://www.youtube.com/watch?v=GwExDG7n7Zg">Who's your daddy now?</a><br /><br /></div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com2tag:blogger.com,1999:blog-1362481190840665151.post-39212502062723954692009-02-24T13:19:00.016-05:002009-03-05T00:41:49.040-05:00Red Hat responds, announces its virtualization roadmapNot wanting to be left out of the party, Red Hat has finally laid their cards on the table by <a href="http://www.redhat.com/virtualization-strategy/">announcing their virtualization strategy</a>. Their plan will be rolled out in stages over the next 18 months, with the first product being released 3 months from now. While this announcement doesn't have nearly as much direct impact as <a href="http://blog.talawah.net/2009/02/citrix-slaps-vmware-in-face-releases.html">Citrix releasing XenServer for free</a>, it does a pretty good job of showing us what is in store from the world's biggest Linux vendor.<br /><h4>Red Hat Enterprise Linux: Xen out, KVM in</h4>Red Hat will be basing all future virtualization technologies on KVM instead of Xen, starting with the release of RHEL 5.4 later this year. This move has been in the making since Red Hat bought <a href="http://www.qumranet.com/">Qumranet </a>(the orignal KVM devlopers) in September of last year. While there were initially a lot of questions about the value of this change (Xen had a headstart on KVM), Red Hat maintains that KVM will provide them with a better overall growth trajectory than Xen could have.<br /><br />With Xen, VMWare ESX and Microsoft's Hyper-V, the <a href="http://en.wikipedia.org/wiki/Hypervisor">hypervisor</a> (the core virtulaization layer) is a independent piece of software that sits directly on top of the physical hardware. A completely separate, privileged operating system, Dom0 (Linux) for Xen, Service Console (Linux) for VMWare, or the Parent Parttiion (Windows) for Hyper-V, sits on top of the hypervisor and performs additional management functions.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicfBVqdY7UKuv8HZLHgztJeZ6Ba_BhBPRECTb5Chvv_Ylli0XvgeN0vMlBMuym1Ut-Efa2Ka9jHzPOeJ0y7Q-YQ1AQb49RJsI7xBWVFc-jyL22k6gD9c7JCpuIFdmhP-KtadgK0SBxuDwf/s1600-h/hypervisor.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 237px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicfBVqdY7UKuv8HZLHgztJeZ6Ba_BhBPRECTb5Chvv_Ylli0XvgeN0vMlBMuym1Ut-Efa2Ka9jHzPOeJ0y7Q-YQ1AQb49RJsI7xBWVFc-jyL22k6gD9c7JCpuIFdmhP-KtadgK0SBxuDwf/s400/hypervisor.png" alt="" id="BLOGGER_PHOTO_ID_5306453306794536594" border="0" /></a><span style="float: right; text-align: right; clear: both; width: 250px; margin-right: 21px;font-size:smaller;" >Image courtesy of <a href="http://www.howtogeek.com/howto/the-geek-blog/understanding-the-new-hyper-v-feature-in-windows-server-2008/" target="_blank">How-To Geek</a></span><br /><br />With KVM the Linux kernel itself <span style="font-style: italic;">is</span> the hypervisor, this means that any advances made in Linux in terms of performance, scalability, power management and security automatically become available to the hypervisor. Other solutions (including Xen) have to maintain their hypervisors independently without the direct benefit of the innovation happening around Linux.<div class="fullpost"><br /><h4>Red Hat Enterprise Virtualization Hypervisor and Red Hat Enterprise Virtualization Manager for Servers:</h4>RHEV Hypervisor is a lightweight standalone hypervisor designed to be installed directly on physical hardware. It weighs in at less than 128MB and can be run directly from a flash device or via Netboot. One of the key differentiators that Red Hat is pushing with this product is its stateless nature. By default after a node starts up (e.g. via net-boot) it automatically connects to the management server to pull configuration information and waits for further instructions. There no information stored on disk and everything is centrally managed. This provides a lot of management scalability for moving from 10 servers or 10,000.<br /><br />RHEV Manager for Servers is a web-based virtual machine management platform that manages the RHEV Hypervisor nodes. The combined solution will come with features like live migration, high availability, power management, snapshots, thin provisioning, monitoring and reporting. It is built on existing Red Hat technologies like <a href="http://libvirt.org/">libvirt</a> (VM Management toolkit), <a href="http://freeipa.org/">FreeIPA </a>(user and machine identity management), <a href="http://sources.redhat.com/cluster/wiki/">OpenAIS/Cluster</a> (high availibility), <a href="http://www.redhat.com/mrg/messaging/">AMQP</a> (messaging) and <a href="https://fedorahosted.org/cobbler/">Cobbler</a> (provisioning).<br /><br />Both products will be derived from the open source <a href="http://ovirt.org/">oVirt p</a><a href="http://ovirt.org/">roject</a> which was announced last June. oVirt is to RHEV as Fedora is to RHEL. I have been following the project for a while and though development has progressed rapidly it seems like a lot of changes are still happening. While the oVirt <span style="font-style: italic;">project </span>will probably reach 1.0 within the next 3 months, I am not sure that they will have an enterprise <span style="font-style: italic;">product </span>ready by then.<br /><h4>Red Hat Enterprise Virtualization Manager for Desktops</h4>Last but certainly not least Red Hat has announced its Linux desktop strategy. Red Hat has long shied away from trying to market a traditional Linux desktop product and has instead focused its effort on selling servers. While it has contributed to desktop innovation through the Fedora Project, it has left the consumer desktop niche to Ubuntu.<br /><br />It seems that Red Hat has finally found its desktop calling by way of the server-centric <a href="http://en.wikipedia.org/wiki/VDI">Virtual Desktop Infrastructure (VDI)</a> model. With VDI the software, storage and computing resources associated with an individual's desktop are hosted on a centrally managed server. Users connect to their desktop using thin clients (or older PCs) but still enjoy a full fledged desktop experience (in theory anyway). This model presents numerous benefits in terms of flexibility, security, managment and IT support.<br /><br />The VDI market has a lot of familiar players: <a href="http://www.vmware.com/products/view/">VMWare View</a>, <a href="http://www.citrix.com/english/ps2/products/product.asp?contentID=163057">Citrix XenDesktop</a>, and <a href="http://www.sun.com/software/vdi/index.jsp">Sun VDI</a> are just a few. Red Hat's open source entry will be based on technology it acquired when it bought Qumranet. Under Qumranet the product was called <a href="http://www.qumranet.com/products-and-solutions">Solid ICE</a>:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizP2BkGMihgf0KqK6OXMfKPG71vyGQ5KYUUEmy6L5qAMifI54Y-O2zQQpA2HhFgF5CfpgfwYWpEenYbPqGzSS5PJ38M71XAF5wQdCFwcY0rXyT_d-bIvb1CXINEVA7Ei1IJkvzvawSchRu/s1600-h/solidIce.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 244px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizP2BkGMihgf0KqK6OXMfKPG71vyGQ5KYUUEmy6L5qAMifI54Y-O2zQQpA2HhFgF5CfpgfwYWpEenYbPqGzSS5PJ38M71XAF5wQdCFwcY0rXyT_d-bIvb1CXINEVA7Ei1IJkvzvawSchRu/s400/solidIce.png" alt="" id="BLOGGER_PHOTO_ID_5306490641333713666" border="0" /></a><span style="float: right; text-align: right; clear: both; width: 250px; margin-right: 21px;font-size:smaller;" >Image courtesy of <a href="http://www.qumranet.com/products-and-solutions/" target="_blank">Qumranet</a></span><br /><br />Solid ICE was not open source. Red Hat has committed to open sourcing it, but the process could take a while. It will be very interesting to see what happens with the SPICE protocol. It is supposedly superior to RDP and ICA when it comes to providing a <a href="http://www.youtube.com/watch?v=S4DZwYqnyJM">high quality desktop experience</a>. If Red Hat opens it up and removes any patents surrounding it, there could be some serious disruption in the thin client market.<br /><h4>Linux on the Desktop</h4>VDI solutions (including Solid ICE) are primary built for deploying Windows based desktops, however once Red Hat gets their foot in the door with VDI, the process for transitioning to a Linux based desktop is made much easier. Rolling out and supporting VDI based desktops is significantly cheaper, which makes the migration process simpler. VDI also makes it easier to support a mixed desktop environment.<br /><h4>Presentation Virtualization</h4>Overall Red Hat's strategy is very sound (if a little late). However I think that there is one key component missing. In my opinion, using presentation virtualization (aka Server-side Application Virtualization) to deliver Windows based apps to a Linux desktop is Red Hat's best strategy for seeing any serious uptake on the corporate desktop, even with VDI in the picture; however this is a whole other can of beans so it probably deserves a blog post of its own.</div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-62860283760060698312009-02-23T20:46:00.010-05:002009-03-13T10:59:31.918-05:00Citrix slaps VMWare in the face, releases XenServer for free.In a bold and unexpected move, <a href="http://www.citrix.com/English/NE/news/news.asp?newsID=1687130">Citrix today announced</a> that it will be releasing the enterprise version of its virtualization management platform free of cost. This aggressive strike against VMWare, the incumbent 800 lb gorilla in the virtualization space, comes just a day before <a href="http://www.vmworld.com/index.jspa">VMWare's 2009 European Conference</a>.<br /><br />Over the last 2 years Citrix has been catching up with VMWare in terms of features. VMWare has managed to stave off the XenServer threat by releasing some of its lower end products for free but it seems very unlikely they would be willing to match Citrix's latest move.<br /><br />XenServer is Citrix's proprietary virtualization platform that is built on top of the open source Xen hypervisor. Previously a cut-down, single server product (XenServer Express) was available for free, but today's announcement means that features like centralized multi-server management, resource pools and live migration will also be free of charge (but not open source). See below for a feature comparison between the free offerings from each company. It is provided by Citrix so it should be taken with a grain of salt:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj27Deo0N74F2XhROAa4kGAtTtVzpHW4FlBL6X20pIGI9F0jEdP8g2BcAq-AjMUCEMAsdNiC-AbvGxIuCrllAt9uueBa_NLZkK7wpWAsyGDlfZIw4A8wKUss4nrJ53aBIexNV2j_WqK9mgz/s1600-h/XenServerFreevsESXi_3.gif"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 299px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj27Deo0N74F2XhROAa4kGAtTtVzpHW4FlBL6X20pIGI9F0jEdP8g2BcAq-AjMUCEMAsdNiC-AbvGxIuCrllAt9uueBa_NLZkK7wpWAsyGDlfZIw4A8wKUss4nrJ53aBIexNV2j_WqK9mgz/s400/XenServerFreevsESXi_3.gif" alt="" id="BLOGGER_PHOTO_ID_5306184144588930610" border="0" /></a><h4>Citrix Essentials</h4>Releasing XenServer for free is the strategy for getting their foot in the door, Citrix plans to continue to make money by moving up the vaule chain. Their new <a href="http://www.citrix.com/English/ps2/products/feature.asp?contentID=1686940">Essentials for XenServer</a> product provides additional functionality like High Availibility, Dynamic Resource Management, Advanced Storage Management, Workflow, Automation and Provisioning. Establishing XenServer is the main virtualization technology in the datacenter will make it easier for them to push their application virtualization (XenApp) and desktop virtualization (XenDesktop) products as well.<br /><h4>Where are Sun and Red Hat?</h4>So with all this activity going on, where are the open source players? While both vendors have been working on their own virtualization stacks, neither has managed to mount a comparable virtualization offering to date. Today's announcement is likely to have a big effect on them as well, we'll see how they respond.<div class="fullpost"><h4>The Microsoft Deal</h4>Citrix also announced that it will be partnering with Microsoft to sell <a href="http://www.citrix.com/English/ps2/products/feature.asp?contentID=1686941">Essentials for Hyper-V</a>, a product which provides some of the same advanced management functionality to Microsoft's Hyper-V virtualization platform. Citrix and Microsoft have long had this bizarre co-operation/competion model where you are never quite clear on who is benefiting most. Despite the fact that Citrix has worked closely with Microsoft to develop and sell its XenApp product (formerly Citrix Presentation Server), over time Microsoft has added more and more competing features to their core server product, and today Microsoft has a full <a href="http://www.microsoft.com/systemcenter/appv/default.mspx">product suite that competes directly with XenApp</a>. Nevertheless, the two still collaborate around the product. The same thing can be expected to happen with their server virtualization products, but at the end of the day, one thing is for sure, VMWare is the one that will be hurt the most.</div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com0tag:blogger.com,1999:blog-1362481190840665151.post-86623981321190952492009-02-10T12:50:00.039-05:002009-02-25T22:24:16.213-05:00Why Yahoo! should buy Sun!Forget the ill-fated on-again, off-again merger with Microsoft, if Yahoo! wants to be relevant in 2010 they need to buy Sun Microsystems. If/when Yahoo! sells their search business to Microsoft, there is going to be a big unanswered question. Who/What is Yahoo!?<br /><br />Yahoo! needs a purpose/identity other than "a portal". Sun on the other hand needs to make some key acquisitions so it can complete its software stack. A merger of the two companies would create the ultimate open source company and the ultimate Microsoft competitor.<br /><br />Both companies have already started restructuring exercises to trim the fat; together they would have quite a number of synergies:<br /><h4>Cloud Computing</h4>Both Yahoo! and Sun are behind the pack in terms of cloud computing. This is particularly ironic for Sun given that they were one of the early innovators in the field. Together they could quickly make up lost ground and address all three layers of the cloud.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8-VMwqOEyPRXMnOc1mI7tJwMEDK9Nt9NeWrUmragyf1sUa6vbbM3RHGVoCCgHcJo5VCSpizQjDdTpD2pSASOGTx0u8NSUEBtLuJgzFaV-lXildDzvFln7LT3OhZrxXibHJDLxXdh9m6tt/s1600-h/cloud-image-thumb.png"><img style="margin: 0pt 0pt 2px 10px; float: right; cursor: pointer; width: 237px; height: 260px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8-VMwqOEyPRXMnOc1mI7tJwMEDK9Nt9NeWrUmragyf1sUa6vbbM3RHGVoCCgHcJo5VCSpizQjDdTpD2pSASOGTx0u8NSUEBtLuJgzFaV-lXildDzvFln7LT3OhZrxXibHJDLxXdh9m6tt/s320/cloud-image-thumb.png" alt="" id="BLOGGER_PHOTO_ID_5301324459198382498" border="0" /></a><span style="float: right; text-align: right; clear: both; width: 237px;font-size:smaller;" >Image courtesy of <a href="http://et.cairene.net/2008/07/03/cloud-services-continuum/">Expert Texture</a></span><span style="font-weight: bold;">SaaS </span>- This is primarily Yahoo!'s domain. Their acquisition of <a href="http://www.zimbra.com/">Zimbra</a> has already started them down this path.<br /><br /><span style="font-weight: bold;">PaaS</span> - This is where they meet in the middle. Yahoo! brings PHP and Hadoop, Sun brings Java/JRuby/Jython/Groovy and MySQL.<br /><br /><span style="font-weight: bold;">IaaS </span>- This is Sun's domain. When <a href="http://www.network.com/">network.com </a>relaunches it will feature technology from Sun's Xen based products and their <a href="http://www.qlayer.com/">Q-layer</a> acquisition.<br /><div class="fullpost"><h4>The In-Cloud/On-Premises Continum</h4>Increasingly business want the flexibility to either deploy highly customized software on-premises, take advantage of a hosted solution, or deploy some hybrid combination of the two (company specific virtual appliance hosted in a 3rd party datacenter). The companies that can deliver these solutions to their users while providing seamless migration path between them will be the ones that dominate the future of IT.<br /><br />Both Yahoo and Sun have already made individual strides in this direction. Together they would be even stronger. Yahoo!'s portal and brand recognition will allow it to deliver the SaaS solutions to the masses and the SMBs, while Sun's brand will capture the enterprise.<br /><h4>Open Source</h4>Yahoo!'s entire web infrastructure is built on the open source LAMP (Linux, Apache, MySQL, PHP) platform, Sun sees this as an important growth area and they are <a href="http://www.sun.com/software/webstack/">trying to get a foothold</a>. Over the last few years Yahoo! has developed active communities around two key open source products that it uses internally:<br /><ul><li><a href="http://yuilibrary.com/">YUI</a> a CSS/Javascript framework being used for building rich internet application on multiple Yahoo! properties.</li><li><a href="http://en.wikipedia.org/wiki/Hadoop">Hadoop</a> an open source implementation of Google's MapReduce framework for distributed computing.. Yahoo! has the largest know Hadoop implementation.</li></ul>Sun is no slouch when it <a href="http://www.openoffice.org/">comes to</a> <a href="http://www.opensolaris.com/">open source</a> <a href="http://openjdk.java.net/">either</a>. However it is only within that last year or so that I think Sun has shown a real commitment to a business model the truly depends on, and benefits from open source:<br /><ul><li>Sun's acquisition of MySQL last year for $1 billion was a bold statement about its commitment to open source (and the LAMP stack).</li><li>Sun has developed thriving communities around its Glassfish and OpenESB projects and used them as the basis for several <a href="http://www.sun.com/software/products/glassfish_portfolio/">supported product offerings</a>.</li><li>Sun has abandoned its legacy portal product and released <span style="text-decoration: underline;"></span><a href="http://www.sun.com/software/products/webspace/index.xml"> new product </a>based an <a href="http://www.liferay.com/web/guest/partners/sun">open partnership</a> (no money exchanged) with <a href="http://www.liferay.com/web/guest/">Liferay</a></li></ul><h4>Datacenter Consolidation/Optimization</h4>The combined company could take advantage of each other's strenghts in the datacenter. Yahoo! would have access to high-quality hardware and software and the lowest possible prices. Sun would have direct access to the internal operations one of its largest "customers" (at least where MySQL is concerned). Together they would be able to "<a href="http://en.wikipedia.org/wiki/Eat_one%27s_own_dog_food">dog-food</a>" new ideas on a massive scale before turning them into products.<br /><h4>Expertise Exchange</h4>Yahoo is known for their <a href="http://developer.yahoo.com/ypatterns/">front-end</a> <a href="http://developer.yahoo.com/yui/">engineering</a>, Sun is known for their <a href="http://en.wikipedia.org/wiki/ZFS">enterprise-level </a><a href="http://en.wikipedia.org/wiki/Dtrace">engineering</a>. Together they fight <del>crime</del> Microsoft.<br /><h4>Competing with Microsoft</h4>People having been doubting Microsoft long-term survival for along time, but the reality is that no one company can truly compete with them when it comes to software. We all know that the Windows/Office cash cow will gradually yield less and less, but their long term strategy is still a very compelling one: <a href="http://www.microsoft.com/online/default.mspx">embrace SaaS</a>, <a href="http://www.microsoft.com/presspass/press/2008/mar08/03-02SPPTEnterpriseGrowthPR.mspx">continue enterprise expansion</a>, and build out the MS centric ecosystem. No one has the breadth and depth of interoperable software that can scale from individuals using ad-supported hosted solutions, to large organizations using highly customized on premises solutions. This combination will allow Microsoft to continue making ridiculous amounts of cash as computing paradigms continue to shift. Any company that figures out how to actually compete with them will carve out a big chunk of that cash for themselves.<br /><h4>But Yahoo!?</h4>Yahoo! wasn't the first company to spring to mind when I though about possible suitors for Sun, but now that I have thought about it, they really seems to fit. I suppose that by extension Google could fit the bill as well, but they are not as desperate as Yahoo!<br /><br />There are plenty reasons why this merger will probably never happen, both companies are hurting pretty bad as far as their stocks are concerned and investors may not be crazy about such bold moves. But I can dream can't I?<br /><br />What do you think can <a href="http://seekingalpha.com/article/106893-sun-micro-is-now-trading-at-cash">nothing</a> plus <a href="http://weblog.infoworld.com/robertxcringely/archives/2008/11/is_yahoo_dead.html">nothing</a> add up to something?<br /></div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com10tag:blogger.com,1999:blog-1362481190840665151.post-10669544490649122032009-02-09T12:41:00.021-05:002009-02-25T22:28:16.359-05:00First!After working in IT for more than 10 years (if you count college), most of which was spent in web development, I have finally created a blog.<br /><h4>The Rationale</h4>What is this blog all about? Well it is certainly going to have a technical slant to it, I work in IT and that is what I spend most of my days thinking about; however I do expect some non-technical things to creep in every now and again. From time to time I settle on a specific subject or idea and I feel compelled to start jotting things down on paper before the pictures fade away. This is not to say that the things I think about are particularly innovative or compelling but I definitely see a value in putting things down so that I can examine them later, even if it is just to look back and laugh.<h4>The Motivation</h4>What made me <span style="font-style: italic;">finally </span>create a blog? In a word: Unemployment. In early 2008 I left my job to go work for a start-up company in the financial services industry. As it turns out 2008 was a bad year for the industry (especially for start-ups) so I was out of a Job by Christmas. This gave me an abundance of time to get up to speed with the latest and greatest in the tech world, but left me with<span style="font-weight: bold;"> no co-workers to share my theories with.</span><h4>The Software</h4>These days most people seem to be using <a href="http://wordpress.org/">Wordpress.org</a> (software), <a href="http://wordpress.com/">Wordpress.com</a> (hosted), <a href="http://www.blogger.com/">Blogger </a>(by Google) or <a href="http://www.tumblr.com/">Tumblr </a>(if you are hip).<div class="fullpost"><br />The non-hosted version of Wordpress was immediately ruled out because I didn't want to deal with the hassle of managing comment spam or software updates. Tumblr was ruled out because it requires a 3rd party just to enable commenting (I guess I am not hip).I ended up settling on Blogger because Wordpress.com doesn't let me use my own domain name unless I pay $10/yr (not much money, but it is still more of a hassle).<br /><br />Getting started was pretty straight forward and the tools work pretty well. I think it is time Blogger did a redesign though (both in terms of templates and the overall site), Wordpress.com looks so much cleaner and more professional that I was seriously considering paying for it based on looks alone.</div>Marc Richardshttp://www.blogger.com/profile/07627402908638807501noreply@blogger.com2