<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>theAlphet</title>
	<atom:link href="http://thealphet.com/consulting/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://thealphet.com/consulting</link>
	<description>Consulting for the freedom of opensource</description>
	<lastBuildDate>Tue, 15 Apr 2008 14:27:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Java Swing history</title>
		<link>http://thealphet.com/consulting/?p=15</link>
		<comments>http://thealphet.com/consulting/?p=15#comments</comments>
		<pubDate>Tue, 15 Apr 2008 14:25:43 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=15</guid>
		<description><![CDATA[Geplaatst: Monday 29th of December 2003 at 18:14:42 Printen I spent quite a while to find a newsgroup e-mail I read a year or so ago, but I found it. Itâ€™s about the origins of Swing, why it is the way it is and Amy Fowlerâ€™s role in it. Even though it appears not to [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 5pt 0in; page-break-after: avoid"><strong>Geplaatst: Monday 29th of December 2003 at 18:14:42 <a href="http://thealphet.com/wp-print.php?p=545"><span style="color: blue">Printen</span></a></strong></p>
<p class="MsoNormal" style="margin: 5pt 0in">I spent quite a while to find a newsgroup e-mail I read a year or so ago, <a href="http://www.mail-archive.com/jug-discussion@tucson-jug.org/msg00355.html"><span style="color: blue">but I found it</span></a>.<br />
Itâ€™s about the origins of Swing, why it is the way it is and <a href="http://today.java.net/pub/au/48"><span style="color: blue">Amy Fowler</span></a>â€™s role in it. Even<br />
though it appears <a href="http://javalobby.org/thread.jspa?forumID=61&#038;threadID=7034&#038;start=0&#038;mode=flat"><span style="color: blue">not to be completely true</span></a>, itâ€™s a juicy story:</p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>To see why everything is so messed up you need to go back a few years to<br />
the world when just AWT existed. Sun had built a basic set of portable<br />
control classes that mapped to native widgets on the different operating<br />
systems, and the next obvious step was to continue this model beyond its<br />
initial set of CUA 92 components ( text, button, etcâ€¦ ) and add stuff<br />
like a table, a tree, a notebook, a slider, etcâ€¦ While AWT was buggy<br />
beyond belief this was just poor code that needed fixing by Sunâ€™s coders.<br />
The developers at Sun like Graham and Otto used to publicly blame their<br />
bugs on operating system differences like â€œfocus order is different between<br />
windows and OS/2â€ or â€œthe behavior of Ctrl-X is different between â€¦â€ and<br />
other lame excuses to take the heat off the fact that the real problem was<br />
that Sun released the code too early. Then Amy Fowler appeared at Sun.<br />
Without being sexist, Amy is a very pretty intelligent girl, and most geeky<br />
developers just go to putty in her hands.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>Amy came from a Smalltalk company called Objectshare where she looked after<br />
the UI class library there. The history of Smalltalk is a sad one if you<br />
apply it to Java, because once upon a time there were 3 big Smalltalk<br />
companies â€“ IBM, Parc-Place and Digitalk. All 3 had equal market share in<br />
early 90s and life was good. Parc   Place used emulated widgets ( i.e. a<br />
Swing design ) while IBM and Digitalk used native widgets. IBM overtook<br />
the others who then merged to form, imaginatively, Parc-Place Digitalk. A<br />
huge battle enused in which they tried to merge their products in a project<br />
called Jigsaw which failed due to politics ( the developers actually got it<br />
working ) because the native versus emulated crowd fought to the bitter<br />
death. Amy won a moral victory, however at IBM we just got all of their<br />
accounts because the two companies did nothing for an entire year except<br />
quarrel. When the dust settled the share price of PPD ( which was now<br />
called Objectshare for the same reason that Windscale was renamed to<br />
Sellafield â€“ in the hope that everyone forgets the disaster that occured<br />
there ) went from 60 bucks to under 1 dollar a share. They were pulled<br />
form NASDAQ because of incorrect reportings of earnings and the lights went<br />
out. Sun were just up the road from PDD so the teccies all sent their CVs<br />
there. Amy was hired, and because she promised to solve all of the widget<br />
problems by doing a lightweight solution, convinced Sun management to make<br />
her the head of the GUI development. She got in on the ticket of â€œthe<br />
folks already here messed up, let me handle itâ€. Amy then hired all her<br />
old Parc-Place friends and they set about creating Swing.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>The obvious thing to do with Swing would be to make it just a drawing<br />
framework for the guys who want to do map software and create drawing<br />
applications, however build it around the AWT classes that would still deal<br />
with buttons and other stuff. The Sun guys such as Philip and Mark<br />
already had AWT working with tables, trees and notebook so it would be the<br />
obvious thing to do. Not so for the guys who wrecked PDD, they wanted<br />
everything lightweight. Ignorance at Sunâ€™s management, combined with Amyâ€™s<br />
ruthless politics led to the mess we have today. Amy also sold Sun on the<br />
fact that Swing was a joint development with Netscape as part of the<br />
mozilla project, when in reality this was just a sales puff of hers.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>At IBM we hated Swing from day one. Big, buggy, and looks crap. Initially<br />
our tools such as VisualAge for Java were all written in Smalltalk ( which<br />
used native widgets ) so when we started to migrate these to a Java<br />
codebase we need a widget set. All of the IBM developers are the same<br />
crowd who used to work with Smalltalk, and we reluctantly under management<br />
orders built our WebSphere Studio tools using Swing. It was a terrible,<br />
buggy, monster. In our initial previews when it was demoâ€™d against<br />
Microsoft Visual Studio products all our users hated it just because of how<br />
it looked, never mind what it let you do. Most shoppers donâ€™t like to get<br />
in car that looks and smells terrible, even if it does have a nice engine.<br />
We therefore created a project to migrate our Smalltalk native widget set<br />
over to Java. This was done in Canada by a group called Object Technology<br />
International. It was a success as we released a product called VisualAge<br />
Micro Edition using it, which became a very successful IDE for J2ME<br />
development. However, the OTI folks found that Swing was so badly broken<br />
deep down in the way it reads windows events that we couldnâ€™t even get<br />
interoperability between SWT ( the S initially stood for Simple although it<br />
was later changed to Standard ) and Swing. They read their event queue in<br />
a way that can leave memory holes so we had to have our own loop polling<br />
the windows event queue to do this correctly. We tried over and over to<br />
get Sun to fix this but Amy just didnâ€™t understand this, so we took the<br />
decision that SWT and AWT/Swing would not co-exist. We even have our own<br />
Point and Rectangle classes in SWT &#8211; there is no dependence on any AWT or<br />
Swing classes in the entire toolkit. We put the toolkit into Eclipse which<br />
is a tools platform design with total goal of taking on Micrsoft and Visual<br />
Studio. It is open source so anyone can build onto it, and we have people<br />
like TogetherSoft, Rational porting onto it. Our competition is Microsoft,<br />
so all our efforts are focused at taking them head on.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>Sun however got totally pissed off about this. They have NetBeans which<br />
they want to do the same thing as Eclipse with and they complained to IBM<br />
senior management. They saw SWT as tying you into Windows, which is total<br />
bunk because it runs on Mac/Linux using GTK, and a number of micro edition<br />
platforms. They refused to let Eclipse be Java certified because it has<br />
native code in it, so the Eclipse product has to be very careful about<br />
their use of the Sun tradmarked word â€œJavaâ€. Eclipse canâ€™t even call<br />
itself a Java IDE, and Sun have made threats of legal moves to stop IBM<br />
from ever calling Eclipse a Java IDE. One result of this is the fact the<br />
IBM created GUI builder that runs on Eclipse lets you build Swing/AWT GUIs,<br />
but doesnâ€™t let you drag and drop SWT widgets.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>It is totally possible to separate SWT from Eclipse and just wack the DLL<br />
in your path and use the widget toolkit to develop your GUI for your<br />
banking or insurance application or whatever. Again, we canâ€™t promote this<br />
and our hands are tied by Sun on this. Even though the CPL that is part of<br />
the Eclipse open source agreement allows us to offer this as a solution,<br />
Sun have made it very clear that they donâ€™t want us to do this.<br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></em></p>
<p class="MsoNormal" style="margin: 5pt 0in"><em>As for the user community, whatever IBM and Sunâ€™s ultimate motives, I<br />
always find it interesting that those who love Swing say stuff like â€œOnce<br />
you have spend years mastering it, you can use it properlyâ€ which is<br />
basically a way of them trying to justify and defent their hard earned<br />
niche expertise, whereas SWT fans say â€œWow â€“ this is fast, acts native and<br />
works with XP skins, etc.. and is small and lightâ€. Another one I like is<br />
a quote from a user of ours, who says that Swing is like Java deciding not<br />
to do native IO using the operating system, but instead to use the disk<br />
motor arm API and read and write the disk data segments themselves. Swing<br />
basically does this by just grabbing a low level â€œpaint(Graphics)â€ method<br />
and doing all the widget drawing by hand.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSR-168::Hello World Portlet (using Eclipse and Pluto)</title>
		<link>http://thealphet.com/consulting/?p=14</link>
		<comments>http://thealphet.com/consulting/?p=14#comments</comments>
		<pubDate>Tue, 11 Mar 2008 14:51:28 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=14</guid>
		<description><![CDATA[Coming Soon!!!]]></description>
			<content:encoded><![CDATA[<p>Coming Soon!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=14</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Portal Types</title>
		<link>http://thealphet.com/consulting/?p=13</link>
		<comments>http://thealphet.com/consulting/?p=13#comments</comments>
		<pubDate>Thu, 06 Mar 2008 21:47:52 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=13</guid>
		<description><![CDATA[Coming Soon!]]></description>
			<content:encoded><![CDATA[<p>Coming Soon!</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=13</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JTL&#8217;s (Java Tag Libraries)</title>
		<link>http://thealphet.com/consulting/?p=12</link>
		<comments>http://thealphet.com/consulting/?p=12#comments</comments>
		<pubDate>Thu, 06 Mar 2008 21:40:03 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=12</guid>
		<description><![CDATA[Coming Soon!!!!!]]></description>
			<content:encoded><![CDATA[<p>Coming Soon!!!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=12</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse 3.3 &amp; Pluto 1.1.4</title>
		<link>http://thealphet.com/consulting/?p=8</link>
		<comments>http://thealphet.com/consulting/?p=8#comments</comments>
		<pubDate>Wed, 05 Mar 2008 22:29:37 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=8</guid>
		<description><![CDATA[Installing your first Eclipse 3.3 IDE for the use of developing JSR-168 Portlets using Pluto (tomcat) Portlet Driver. Listed below are the steps needed to start you own JSR-168 Portlet using Eclipse as your IDE. Step 1: Downloading Software There are three packages that your going to need installed on your machine 1. Java JDK [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Installing your first Eclipse 3.3 IDE for the use of developing<br />
JSR-168 Portlets using Pluto (tomcat) Portlet Driver.</strong></p>
<p>Listed below are the steps needed to start you own JSR-168<br />
Portlet using Eclipse as your IDE.</p>
<p><strong><br />
Step 1: Downloading Software</strong></p>
<p>There are three packages that your going to need installed on your machine<br />
1. Java JDK 1.5<br />
2. pluto-1.1.4-bundle.zip<br />
3. eclipse-jee-europa-win32.zip</p>
<p>These packages can be downloaded at the apache.org and eclipse.org<br />
websites. The â€˜currentâ€™ direct addresses are listed below respectively:</p>
<p>1. http://java.sun.com/javase/downloads/index_jdk5.jsp<br />
2. http://portals.apache.org/pluto/download.html<br />
3. http://www.eclipse.org/downloads/</p>
<p>To get the correct distribution of eclipse click on the link that says<br />
something like &#8220;Eclipse IDE for Java EE Developers &#8211; Windows .&#8221;<br />
After that you should see an array of places to download the software.</p>
<p><strong>Step 2: Installation of JDK</strong></p>
<p>The first thing you want to do is install the Java JDK 1.5 onto you<br />
machine. The versions of Eclipse and Pluto require JDK 1.5 for creating<br />
JSR-168 Portlets. Once its download just double-click on the executable<br />
and it will install itself on to your workstation. Java usually installs<br />
itself into your (C:\Program Files\Java\jdk*.*).<br />
<strong>Step 3: Installing Eclipse</strong></p>
<p>Now that we have Eclipseâ€™s and Plutoâ€™s packages<br />
downloaded lets install them. First lets start with the<br />
Eclipse IDE (3.3). Eclipse really doesn&#8217;t have a install<br />
script because its all written in java so when you extract<br />
this from its zipped format to you local machine; the directory<br />
you chose is the directory that it will be installed into. Take a<br />
look at the picture below to give you a good example:<br />
<span id="more-8"></span><br />
<img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic2.jpg" /><br />
<em><strong>Please Note</strong></em>: <em>Because Eclipse is a typical IDE I usually follow the same<br />
convention that most programs follow by installing themselves<br />
onto the (C:\Program Files). I just create a folder (called &#8220;Eclipsex.x&#8221;)<br />
and extract the IDE into that folder.</em></p>
<p><strong>Step 4: Installing Pluto 1.1.x</strong></p>
<p>The same rules go (just like in &#8220;step 1&#8243;) for extracting<br />
Pluto 1.1.4 into your desired directory. The same location<br />
you extract Pluto is the same location that Pluto will be<br />
installed. Pluto is a web server so the installation convention<br />
that I used is to simply create a folder in my root directory<br />
of my &#8220;C:/&#8221; drive called &#8220;Pluto&#8221; and extract the web server there.<br />
See picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic3.jpg" /><br />
Now that we have everything installed we can configure our Eclipse<br />
IDE.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;IDE Configuration part ONE (JDK 1.5)&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>Located the directory where you have installed Eclipse. In that<br />
directory should be another directory called &#8220;eclipse .&#8221; Inside<br />
that eclipse directory is the executable to start eclipse. My<br />
directory structure looks like this:</p>
<p>(C:\Program Files\eclipse3.3\eclipse)</p>
<p>Double click on the executable called &#8220;eclipse.exe&#8221;</p>
<p>Eclipse will first prompted you with a suggested location<br />
to configure its&#8217; workspace. Example listed below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic4.jpg" /><br />
You can chose the default location for now.</p>
<p>There are 2 primary configurations that we have to do to<br />
Eclipse to configure it to work correctly with the other<br />
software packages that we downloaded.</p>
<p><span style="font-size: 10pt">After Eclipse starts up you will see a picture like the one listed below:</span></p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic5.jpg" /></p>
<p>AND<br />
<img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic6.jpg" /></p>
<p><strong>Please Note</strong>: <em>Eclipse can have multiple workbenches which means<br />
you can have a instance of Eclipse open for each workbench<br />
defined.</em></p>
<p>Just click â€œOKâ€ for now and that will take you to a empty workbench<br />
of the Eclipse IDE itself. View picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic7.jpg" /><br />
Now we are ready to configure to compile using a default JDK/1.5<br />
(Java Development kit) . On the menu bar click &#8220;Window > Preferences&#8221;<br />
You should see a &#8220;Preferences&#8221; window listed below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic8.jpg" /><br />
Now there are options there that allows you to control your Eclipse<br />
environment; remember this because you will always use it through your<br />
development lifecycle. Click on the option that says &#8220;Java &#8221; and will<br />
see the expanded selections listed. All we are concerned about is the<br />
option that says &#8220;Installed JREâ€™s .&#8221; View picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic9.jpg" /></p>
<p>If you notice there are now &#8216;NO&#8217; installed JREs, so what you will<br />
have to do is add the installed JDK 1.5 that you downloaded and<br />
installed earlier. To do that all you have to do is click that &#8220;Add&#8221;<br />
Button. After that you will see a window like one listed below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic10.jpg" /></p>
<p>Click the &#8220;Browse&#8221; button  and go to the location that you installed<br />
you JDK. As we stated earlier Java usually installs all it versions<br />
in the &#8220;C:\Program Files\Java&#8221; location. In that location you will<br />
see the JDK 1.5 that you installed. Just choose that JDK folder the<br />
IDE will do the rest. View picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic11.jpg" /><br />
Now you should see the JDK 1.5 in the list of installed JREs.<br />
Make sure the check box is checked. This will inform the IDE to<br />
use this JDK for your projects located in all workspace(s). One of<br />
the great features about Eclipse is that  Eclipse is designed this<br />
way so you can change compile options per-project. If you have<br />
more then one JDK installed. After you done click the &#8220;OK&#8221;<br />
button and that should be it.</p>
<p>Now lets configure Pluto 1.1.4 for the Eclipse IDE</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;IDE Configuration part TWO (Pluto 1.1.4)&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>As instructed in the &#8220;IDE configuration part ONE&#8221; you currently have a<br />
installation of Pluto&#8217;s server  (portlet driver) installed on you machine<br />
located in the directory that you chose for the installation. In part on<br />
I advised for the directory to be at the root level of your hard drive<br />
because it&#8217;s a server, but it doesn&#8217;t matter where you decide to install it.</p>
<p>Now it&#8217;s time to enable Eclipse to use it as its as one of its publishing<br />
server(s). In the Eclipse IDE go to &#8220;Windows > Preferences&#8221; and you will<br />
see a option that says &#8220;Server&#8221;. Expand that option and you will see the<br />
option that says &#8220;Installed Runtimes&#8221; click on that and will see the<br />
picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic12.jpg" /></p>
<p><strong><br />
Please note:</strong> <em>I currently have two runtimes install on my current machine;<br />
when you do this will not see anything until you &#8220;Add&#8221; it to your environment.</em></p>
<p>To add the Pluto server to you IDE just click the &#8220;Add&#8221; button;<br />
after clicking the add you will see the picture below:</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic13.jpg" /></p>
<p>Eclipse supports many kinds of JSP web servers chose &#8220;Apache > Pluto Bundle<br />
v1.1&#8243; and then click the &#8220;Next&#8221; button. You will see another screen prompting<br />
for the installation directory of Pluto.</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic14.jpg" /><br />
Click the &#8220;Browse&#8221; button and go to the location of where you<br />
installed you copy of the Pluto server software.</p>
<p><img align="middle" src="http://www.thealphet.com/consulting/tutorials/Eclipse3_3-Pluto1_4/pic14.jpg" /></p>
<p>After choosing the location the Eclipse IDE will do the rest.<br />
After that just click the &#8220;OK&#8221; button and then click<br />
the &#8220;Finish&#8221; button. You will then see the Pluto server<br />
as on of your &#8220;Installed Server Runtime Environments&#8221;<br />
Click &#8220;OK&#8221; and your Eclipse IDE environment is ready.</p>
<p>Eclipse has really good help functionality; if you need a tutorial<br />
on how to create a web projects. Just click the &#8220;Help > Help Contents&#8221;<br />
option in the menu.</p>
<p>Listed below is a web tutorial on how to use Eclipse:</p>
<p>https://eclipse-tutorial.dev.java.net/</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=8</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Full Duplex using the mii-tool (setting ethernet card) in Redhat</title>
		<link>http://thealphet.com/consulting/?p=10</link>
		<comments>http://thealphet.com/consulting/?p=10#comments</comments>
		<pubDate>Wed, 27 Feb 2008 03:29:02 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=10</guid>
		<description><![CDATA[Description &#8211; Using mii-tool, the speed and duplex of an ethernet interface can be set manually. Directions - You must set both the speed and duplex at the same time (it is not possible to auto negotiate only one). Typical combinations are: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD To set 100 Mbps and full duplex on interface [...]]]></description>
			<content:encoded><![CDATA[<p>Description &#8211; Using mii-tool, the speed and duplex of an ethernet interface can be set manually.</p>
<p>Directions -<br />
You must set both the speed and duplex at the same time (it is not possible to auto negotiate only one). Typical combinations are:</p>
<p>100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD</p>
<p>To set 100 Mbps and full duplex on interface eth0, for example, use:</p>
<p>mii-tool -F 100baseTx-FD eth0</p>
<p>[root@init.d]# /sbin/mii-tool -v eth0<br />
eth0: no autonegotiation, 100baseTx-HD, link ok<br />
product info: vendor 00:08:18, model 17 rev 0<br />
basic mode:   autonegotiation enabled<br />
basic status: autonegotiation complete, link ok<br />
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD<br />
advertising:  100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control<br />
link partner: 100baseTx-HD</p>
<p>These links helped me out!!</p>
<p>http://www.yolinux.com/TUTORIALS/LinuxTutorialNetworking.html</p>
<p>http://www.siliconvalleyccie.com/linux-hn/network-linux.htm</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=10</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Basic Apache Certificat install</title>
		<link>http://thealphet.com/consulting/?p=9</link>
		<comments>http://thealphet.com/consulting/?p=9#comments</comments>
		<pubDate>Wed, 27 Feb 2008 03:22:54 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=9</guid>
		<description><![CDATA[Now I&#8217;ve got my server installed, how do I create a test certificate? Step one - create the key and request: openssl req -new > new.cert.csr Step two &#8211; remove the passphrase from the key (optional): openssl rsa -in privkey.pem -out new.cert.key Step three &#8211; convert request into signed cert: openssl x509 -in new.cert.csr -out [...]]]></description>
			<content:encoded><![CDATA[<p>Now I&#8217;ve got my server installed, how do I create a test certificate?<br />
<strong><br />
Step one </strong>- create the key and request:</p>
<p>openssl req -new > new.cert.csr</p>
<p><strong>Step two</strong> &#8211; remove the passphrase from the key (optional):</p>
<p>openssl rsa -in privkey.pem -out new.cert.key</p>
<p><strong>Step three</strong> &#8211; convert request into signed cert:</p>
<p>openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 365</p>
<p>The Apache-SSL directives that you need to use the resulting cert are:</p>
<p>SSLCertificateFile /path/to/certs/new.cert.cert<br />
SSLCertificateKeyFile /path/to/certs/new.cert.key</p>
<p>How do I create a client certificate?</p>
<p><strong>Step one </strong>- create a CA certificate/key pair, as above.</p>
<p><strong>Step two</strong> &#8211; sign the client request with the CA key:</p>
<p>openssl x509 -req -in client.cert.csr -out client.cert.cert -signkey my.CA.key -CA my.CA.cert -CAkey my.CA.key -CAcreateserial -days 365</p>
<p><strong>Step three </strong>- issue the file &#8216;client.cert.cert&#8217; to the requester.<br />
The Apache-SSL directives that you need to validate against this cert are:</p>
<p>SSLCACertificateFile /path/to/certs/my.CA.cert<br />
SSLVerifyClient 2</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=9</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux Basics (for a novice)</title>
		<link>http://thealphet.com/consulting/?p=7</link>
		<comments>http://thealphet.com/consulting/?p=7#comments</comments>
		<pubDate>Wed, 27 Feb 2008 03:09:09 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=7</guid>
		<description><![CDATA[Linux Beginners Track Everyday with Linux @ thealphet consulting The Beginners Linux Guide Focal Points General Information on Installing the OS Partitioning your Hard Drive for the Linux Installation Booting Up The install process Using the Command Shell About shells Basic Shell Commands, move, copy, etc. Using the vi text editor Setting up the executable [...]]]></description>
			<content:encoded><![CDATA[<p>Linux Beginners Track Everyday with Linux @ thealphet consulting</p>
<ul>
<li>The Beginners Linux Guide Focal Points</li>
<li>General Information on Installing the OS</li>
<li>Partitioning your Hard Drive for the Linux Installation</li>
<li>Booting Up</li>
<li>The install process</li>
</ul>
<p>Using the Command Shell</p>
<ul>
<li>About shells</li>
<li>Basic Shell Commands, move, copy, etc.</li>
<li>Using the vi text editor</li>
<li>Setting up the executable path</li>
<li>Finding out how much space a dir takes up</li>
<li>Uncompressing tgz files</li>
<li>Using the ps command to view processes</li>
<li>Using the find command</li>
</ul>
<p>Configuring Hardware</p>
<ul>
<li>Setting up Plug and Play Devices</li>
<li>Setting up a Modem in Linux</li>
</ul>
<p>Becoming a Super User</p>
<ul>
<li>Introduction for SU candidates</li>
</ul>
<hr /><span id="more-7"></span><br />
The Console:</p>
<ul>
<li>When you start the Linux console it&#8217;s  really just a window which knows how to display text in a fixed width font. Please keep in mind that it knows nothing about commands or anything like that. It does know that it must immediately start another process called a shell, and forward your keystrokes to that program and display any output the shell sends back. It also knows that once that shell finishes or when you have exited the shell.</li>
</ul>
<ul>
<li>A shell is a program that allows you to interact with the computer by launching programs, manipulating files, and issuing commands. A shell is sometimes referred to as a command-line interface (CLI). Shells aren&#8217;t quite the same as the GUI desktop environments with which you may already be familiar, though; traditional Linux shells are text-mode tools. Even if you prefer to use a GUI environment, it&#8217;s important that you understand basic shell use because the shell provides the user interface that&#8217;s most consistent across distributions and other environments. You can also use text-based shells through text-mode network connections. Once you&#8217;ve started a shell, you can view and manipulate files and launch programs.</li>
</ul>
<hr />
Shells Conâ€™d</p>
<ul>
<li>Linux supports many different shells, although precisely which ones might be installed varies from one distribution to another. The vast majority of Linux systems include bash, which is usually the default shell for new users. Another common shell is known as tcsh, and many others, such as zsh, csh, and ash, are also available. Most shells are similar in broad strokes, but some details differ.</li>
</ul>
<ul>
<li>The Shell is the thing that directly executes your commands. Common examples include tcsh, bash, zsh, ksh,&#8230;. However, there are two main styles: bash, and tcsh is the main one. This is kind of a reflection of the WindowsXP shell that can be ran from the &#8220;run&#8221; box located in the start menu. Just type the command &#8220;cmd .&#8221;</li>
</ul>
<ul>
<li>Linux shells are full programming environments.  Shells read your commands, interprets them, and react in the correct way.  A good way of looking at this is that you have an:</li>
<ul>
<li>Executable program</li>
<li>Parameters/Flags that are passed to that program</li>
<li>Arguments that the program accept.</li>
</ul>
</ul>
<hr />
So, when you type a command like &#8220;ls -la tyranny&#8221; into the console this is what happens:</p>
<ul>
<li>The Shells interpretation is listed below:</li>
<li>Word #1: &#8220;ls&#8221;</li>
<li>Word #2: &#8220;-la&#8221;</li>
<li>Word #3: &#8220;tyranny&#8221;</li>
</ul>
<p>Word #1 is a command, the rest are options to the command. The command is either:</p>
<ul>
<li>a shell built-in command (echo,export,cd)</li>
<li>an external command (should be in PATH)</li>
</ul>
<hr />
Basic Shell Commands, move, copy, etc</p>
<ul>
<li>clear</li>
<ul>
<li>clear, clears your screen if this is possible.  It looks in the environment for the terminal type and then in the terminfo database to figure out how to clear the screen.</li>
</ul>
</ul>
<ul>
<li>ls</li>
<ul>
<li>List  information  about  the FILEs (the current directory by default). Some options are listed below.</li>
<ul>
<li>-m</li>
<li>-l</li>
<li>-x</li>
</ul>
</ul>
</ul>
<ul>
<li>cd</li>
<ul>
<li>Change the current directory to dir.</li>
<ul>
<li>Example:</li>
<li>cd / or cd /home</li>
</ul>
</ul>
</ul>
<ul>
<li>cp</li>
<ul>
<li>copy files and directories</li>
<ul>
<li>Example:</li>
<li>cp file1.txt newdir</li>
</ul>
</ul>
</ul>
<ul>
<li>mv</li>
<ul>
<li>Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.</li>
<li>mv can me use to change the name of directories.</li>
<ul>
<li>Example:</li>
<li>mv testdir newnamedir</li>
</ul>
<li><em>Remember that Linux commands are case sensitive.</em></li>
</ul>
</ul>
<ul>
<li>find</li>
<ul>
<li>find searches the directory tree</li>
<li>Find is limited by file/directories permissions. It&#8217;s possible to see error messages such as:</li>
<ul>
<li>Example using find command:</li>
<ul>
<li>find / -name testing -print</li>
</ul>
</ul>
</ul>
</ul>
<ul>
<li>rm</li>
<ul>
<li>remove files or directories</li>
<li>This command explicitly deletes all file(s) or directories.</li>
<ul>
<li>Example using the rm command</li>
<ul>
<li>find / -name testing -print</li>
<li>f = force the deletion without asking</li>
<li>r = delete whateverâ€™s in the subsequent directory and files.</li>
</ul>
</ul>
</ul>
</ul>
<ul>
<li>pwd</li>
<ul>
<li>print name of current/working directory</li>
</ul>
</ul>
<ul>
<li>who</li>
<ul>
<li>show who is logged onto the server.</li>
</ul>
</ul>
<ul>
<li>man</li>
<ul>
<li>formats and displays the on-line manual pages.</li>
<ul>
<li>Example:</li>
<ul>
<li>man ls</li>
</ul>
</ul>
</ul>
</ul>
<hr />
Wildcards and other special characters  Conâ€™d</p>
<ul>
<li>* means a sequence of one or more characters (a wildcard)</li>
<li>? means a single character (a wildcard)</li>
<li>$ means the following characters make up an env variable (eg $PATH)</li>
<li>[acde] means a single character matching any of a,c,d more</li>
<li>[0-9] means any digit</li>
<li>~ shorthand for home directory</li>
</ul>
<hr />
Using vi</p>
<ul>
<li>To use vi from the command line all you have to do  is type â€œvi â€</li>
<li>The editor will appear on-screen, with a tilde, &#8220;~&#8221;, on every line, and at the bottom of the screen it says &#8220;filename&#8221; [new file]. If you want to put anything into this file, you have to put the vi editor into insert mode.</li>
<li>Do this by typing the letter &#8216;i&#8217; on its own. &#8220;&#8211; INSERT â€“â€ appears on the bottom of the screen. Now you can type in anything you want.</li>
<li>After you have type some text you would want to save that text. To save in vi you to take the vi editor out of insert mode by hitting â€˜ESCâ€™ key.</li>
<li>After hitting that key press the key â€˜wâ€™ and the return key for writing the file and saving it in your home directory.</li>
<li>To quit out of vi all you have to do is type in the â€˜q!â€™ and hit the return key once, and you will be returned back to the command prompt. You can then type the command â€˜lsâ€™ to see a list of the file you just created.</li>
</ul>
<hr />
Commonly used commands for vi:</p>
<ul>
<li>i &#8211; Begin insert mode.</li>
<li>w &#8211; Write out (Save) the current file. Recommend using :w! instead.</li>
<li>wq!- write out and quit, but the with force; If the write fails, vi will still exit.</li>
<li>q! &#8211; Force quite without saving. Should never fail.</li>
<li>/ &#8211; Do a case-sensitive forward search for word</li>
<li>? &#8211; Do a case-sensitive backward search for word</li>
<li>ESC &#8211; Stop the current command and prepare for the next command</li>
<ul /></ul>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=7</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tomcat 5.5 cert install</title>
		<link>http://thealphet.com/consulting/?p=3</link>
		<comments>http://thealphet.com/consulting/?p=3#comments</comments>
		<pubDate>Tue, 26 Feb 2008 02:06:51 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false">http://thealphet.com/consulting/?p=3</guid>
		<description><![CDATA[These are very Basic instructions for installing a certificate on Tomcat Version 5.5 with JRE 1.5 1. On the server where the SSL Certificate is to be installed, &#8220;cd&#8221; to $JAVA_HOME/bin/ then execute the version.sh file to verify the Tomcat the JRE/JDK version. 2. On the server where the SSL Certificates is to be installed [...]]]></description>
			<content:encoded><![CDATA[<p>These are <strong>very Basic</strong> instructions for installing a certificate on Tomcat Version 5.5 with JRE 1.5</p>
<p>1. On the server where the SSL Certificate is to be installed, &#8220;cd&#8221; to<br />
$JAVA_HOME/bin/ then execute the version.sh file to verify the Tomcat the JRE/JDK version.</p>
<p>2. On the server where the SSL Certificates is to be installed you have to create a Certificate Signing Request (CSR).</p>
<ul>
<li>Uncomment th &#8220;SSL HTTP/1.1 Connector&#8221; entry in<br />
$CATALINA_HOME/conf/server.xml</li>
<li>cd to $JAVA_HOME/bin/ (this is the location for java&#8217;s command line tools)</li>
<li>Run the keytool command</li>
</ul>
<blockquote>
<ol>
<li>keytool -genkey -alies <strong>(FQDN)</strong>  -keyalg RSA -keystore <strong>filename.csr</strong></li>
<li>When prompted on the command line for first and last name, enter the fully<br />
qualified domain name i.e. &#8220;<strong>(FQDN)</strong>&#8220;</li>
<li>keytool -certreq -keyalg RSA -alias <strong>(FQDN)</strong> -file <strong>filename.csr</strong><br />
-keystore <strong>filename.crs</strong></li>
</ol>
</blockquote>
<ul />3. Apply for the certificate at (http://www.verisign.com/)4. When you receive your certificate, copy it to the server <strong>($JAVA_HOME/bin)</strong> or copy and paste it in to a new file on the server. Name it &#8220;cert.cer .&#8221;5. Go to Verisign&#8217;s site to get the intermediate certificate (AKA Server Certificate Chain) at &#8220;http://www.verisign.com/support/install2/intermediate.html&#8221; Copy and paste the text into VI and create a new file named &#8220;chain.cer&#8221;</p>
<p>6. Run the first of two commands needed to import the cert:<br />
keytool -import -alias <strong>root </strong>-keystore <strong>filename.crs</strong> -trustcacerts -file <strong>chain.cer</strong></p>
<p><strong /><br />
7. Run the second command:<br />
keytool -import -alias <strong>(FQDN)</strong> -keystore <strong>filename.crs</strong> -trustcacerts -file <strong>cert.cer</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=3</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://thealphet.com/consulting/?p=1</link>
		<comments>http://thealphet.com/consulting/?p=1#comments</comments>
		<pubDate>Wed, 23 Aug 2006 08:02:33 +0000</pubDate>
		<dc:creator>dghant</dc:creator>
				<category><![CDATA[]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!]]></description>
			<content:encoded><![CDATA[<p>Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!</p>
]]></content:encoded>
			<wfw:commentRss>http://thealphet.com/consulting/?feed=rss2&amp;p=1</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

