Monday, February 3, 2014

Pycharm 3.02 on OpenIndiana

The IDE


Working on the Ajax module of Brython (and multilingual documentation)

Requirements


PyCharm, the free community edition and the professional versions simply require a Java JDK. I use the Oracle (Sun) JDK7 on OpenIndiana.

Installation


The only challenge is downloading the tar.gz file. By faking the user agent to firefox for linux, the download link appears:

Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:24.0) Gecko/20100101 Firefox/24.0

Then it's a matter of gunzip and tar -xvf and moving the directory to /opt and running pycharm.sh in the bin folder.

Francois
@f_dion

Friday, January 17, 2014

Repair, Upgrade or Replace

[I had decided to not publish this, but with the LX brand revived, I thought it would be an interesting story post]

The perpetual question


Repair, upgrade or replace? It doesn't matter if we are talking about an appliance, a car, furniture or a laptop. Whatever it is, it will break or become obsolete. It's all a question of scale and time, and outside pressures.

What do I mean by outside pressures? Let's say you have a car, it is yours and it is working fine. You drive it 30,000 miles each year. It does 20mpg (US). Let's say gas price is $3.50 a US gallon, that's a tad over $5000 a year to make it run (not counting normal maintenance). A lot of money to go from point A to point B, but still within reason. The outside pressure is minor. But let's bump up gas price to $9.00 a gallon, and we are now talking over $13,000 a year. $27,000 over two years. ROI on getting a new car with twice the mpg is now pretty obvious.

But what if there are no options


In our example above we assume there is such a thing as a 40mpg vehicule that can replace the one you have. But what if I told you it has to be able to tow 6000lbs? There might not be any option that fit the bill. So you have to compromise in one way or another. And that is where it gets complicated.

Lightweight, but not lightweight


If you spend times going from one place to another doing presentations, no doubt you've welcomed tablets and ultra portable laptops. To be able to demo a specific n-tier setup or even a whole datacenter directly on a 13" laptop that weighs less than 3.5 lbs is definitely a great thing.

I've been using for a few years a Sony Vaio Z that is totally custom. Large SSD, large drive, multi core. Ram was the limitation back then, 8GB. But anybody familiar with Solaris or (open source solaris) IllumOS based OSes knows that thanks to cpu and memory sharing between each zones and the full virtual networking capability of crossbow, you can simulate a lot of machines within that 8GB.

My outside pressure


Linux zones are no longer available, so I have to rely on virtualbox or other similar solutions. They dont share ressources such as memory and are not lightweight solutions like zones. 8GB is no longer acceptable. CPU or disk is not a problem (not dealing with big data, just terabyte scale).

Lack of solutions


For some reason there are very few lightweight laptops with > 8GB. 16GB seems to be the next barrier, but typically with a very low screen resolution. Why is that? I don't know. So, for right now I have to choice but to wait on technology to catch up, assuming market demand. [Or, now, hope to get LX branded zones back. If somebody was looking for a good business case, I'm giving you one]



Fran├žois
@f_dion

LX zones back in illumos and OpenIndiana?


Branded Zones


If you've used Solaris and typed man lx, you saw:

Standards, Environments, and Macros lx(5)NAME

lx - Linux branded zone

DESCRIPTION



The lx brand uses the branded zones framework described in
brands(5) to enable Linux binary applications to run unmodi-
fied on a machine with a Solaris Operating System kernel.

The lx brand includes the tools necessary to install a Cen-
tOS 3.x or Red Hat Enterprise Linux 3.x distribution inside
a non-global zone. The brand supports the execution of 32-
bit Linux applications on x86/x64 machines running the
Solaris system in either 32-bit or 64-bit mode.

Supported Linux Distributions
The lx brand emulates the system call interfaces provided by
the Linux 2.4.21 kernel, as modified by Red Hat in the RHEL
3.x distributions. This kernel provides the system call
interfaces consumed by the glibc version 2.3.2 released by
Red Hat.

In addition, the lx brand partially emulates the Linux /dev
and /proc interfaces.


But if you've followed the story, lx branded zones became a mere historical reference. Until now.

Reintroduction

David Mackay posted the following webrev to the illumos developer mailing list:

http://cr.illumos.org/~webrev/DavidJX8P/lx-zones-restoration/


This is great, and I hope this gets reintegrated and pushed in the next openindiana!

Fran├žois
@f_dion