Thursday, December 29, 2005

1995...

I read this blog entry the other day and it sort of resonated with me.

I’ve often said 1995 was the year lots of things changed forever.  It was March of 1995 that I last used Forms to develop any applications.  It was the year that client server just totally died in my eyes.  

Much as Matthew described in that blog entry – I distinctly remember the first time I got (as in understood) this web thing – it was 1995.  Way back in 1990/1991 – I was introduced to HTML for the first time.  I was working on a heavy SGML project and this guy Dave Seaman who ran this small startup company at the time – InfoDesign – was sure this HTML thing would take off big time.  Yeah, right says I (such the futurist).  Sure enough – not too long after, it did.

I remember clearly when I first got it.  We had these brown bag technology lunches at Oracle where other sales consultants would get up and over lunch describe some new technology that was up and coming.  One day in early 1995 – Ty Eckard, a friend and co-worker of mine, got up on the 13th floor of the Bethesda Metro Center building we were brought in for a brown bag lunch and talked about HTML.  Boooorrrring I thought – until he did this “cgi-bin” thing.  Oh, did that get my attention.  Big time.

I got a web server (NCSA) later that very afternoon and started playing.  It was the beginning of the end.  I was into Forms in a large way back then – I could make it do anything I wanted.  But this web thing just took over in my mind.  I couldn’t do things nearly as “pretty” with HTML (the blink tag was pretty exciting) – but I could do things and let everyone have at them immediately.  That year – when many others went away on our sales club – I set up an internal web server called Aria (my daughter Megan was born in August, my wife Lori wasn’t wanting to travel in June).  It was on an old piece of Solbourne hardware, but it worked.

We just retired Aria this month – a little over ten years later.  Inside Oracle – Aria is a “known name” – it hosted the “Aria people search” (wrote about that application in Expert One on One Oracle) and people still call it the Aria people search.  Even now that it is hosted on a “data center machine”, it is still the “Aria people search”.  Funny how a little application like that – that suddenly gets 7 hits per second, every second, every day pretty much, 24 hours a day can change things.

1995 was the year that HTML-DB was born as well – believe it or not.  Mike Hichwa (the guy that owns HTML-DB and Raptor inside of Oracle) first started down the path of getting to HTML-DB that year.  We did version 0.00001 using nothing more than SQL*Plus as a cgi-bin application – it worked pretty well actually.  A lot has changed since then.

It doesn’t seem like a decade since then – but it is.

Raptor has arrived...

Project Raptor is available for download.  I first talked about Raptor at the UKOUG this year and said it might be available as a “late Christmas present” and here it is.  It is pretty small, installs easily and gives you a SQLPlus like GUI to the database.  

Check it out – I think you’ll like it.

Tuesday, December 27, 2005

Browser Stats from asktom...

It was asked "what are the browsers used by users on asktom" not too long ago. I didn't have an easy way to figure that out but said "if someone has a mapping of USER_AGENT to short name", I'd be glad to give it a go.

Alberto Dell'Era was kind enough to create such a mapping for us (MSIE users: please right click that link and save target as... Else that browser gives you a big empty file). This is what is shows for the last month on asktom.oracle.com:


BROWSER_TYPE PCT
-------------------- ---------
MSIE 74.46 %
Firefox 21.35 %
Mozilla 1.34 %
Opera 1.28 %
Netscape .75 %
UNKNOWN .29 %
Safari .27 %
OtherBrowsers .16 %
Konqueror .10 %

9 rows selected.


A big thanks to Alberto as I was just too lazy to do it myself...

Monday, December 26, 2005

Web Comments for Firefox...

I’ve been using a new plugin for Firefox for the last week.  It is googles new “blogger web comments for firefox”.  It basically lets you easily see blogs that point to the page you are currently on.  So far, it has been pretty cool.  Not earth shattering cool – just a nice to have thing.

It leads to interesting connections sometimes – you’ll be reading a page – see the little “we have links to this page” icon at the bottom and start clicking to other pages that have something to say about the page you are looking at.

I haven’t noticed the bandwidth hit at all (it runs a little query in the background for every page you go to).  And I’ve been somewhat bandwidth challenged this week as my satellite service has been non-existent since Tuesday.  I’ve been living off of my EVDO card – but I’m right on the edge of broadband service, meaning sometimes I can get 50Kbytes per second download times and sometimes just 14Kbytes – depending on the way the wind is blowing.

I am at this point giving serious consideration to a dedicated T1 line – a bit pricey, but I want a wire going to my house with no quota’s on usage and guaranteed bandwidth.

Friday, December 23, 2005

Browser Wars...

I was just reading Boing Boing and saw that their readers use Firefox more than any other browser. I was sad to see it just isn’t so for here…


SQL> select browser,
2 round( ratio_to_report(cnt) over ()*100, 2 ) pct
3 from (
4 select browser, sum(cnt) cnt
5 from t
6 group by browser
7 )
8 order by 2 desc
9 /

BROWSER PCT
--------------- ----------
MSIE 48.27
Firefox 44.27
Mozilla 4.09
Opera 1.82
Safari 1.27
Netscape .27


But it is close – on the brighter side of things:

SQL> select browser,
2 round( ratio_to_report(cnt) over ()*100, 2 ) pct
3 from (
4 select decode( browser, 'MSIE', 'MSIE', 'NOT MSIE' ) browser, sum(cnt) cnt
5 from t
6 group by decode( browser, 'MSIE', 'MSIE', 'NOT MSIE' )
7 )
8 order by 2 desc
9 /

BROWSER PCT
-------- ----------
NOT MSIE 51.73
MSIE 48.27


Most people are not using IE when reading this blog. I need more Mac users obviously…

Free things I use...

Free things I use.  I pay for lots of software – but I get much for free as well.  I’d like to list out some of the most important (to me) ‘freebies’ – software and services I use regularly.

First and foremost, right in your face is blogspot.com of course.  A place (among many others) where I get free hosting.  Since April, they’ve allowed me to have lots of page views – all without charging me anything (and there is no advertising either).  The service was a bit dodgy at first but seems quite stable these days.

Coupled with blogspot is the little statistics counter – statscount.com – you see on each page.  It is free (although I now use the paid service to get more details).  For free (or for the nominal fee/month for a bit longer list of details – the last 1,100 hits instead of just 100) you get quite a bit.  If you are blogging or hosting or whatever – check it out.

Another service I’ve used over and over is pollhost.com for free “what do you thing” polling.  Simple, fast, lightweight – it just works.

A tool I cannot remember how I got along without – primopdf.  Ever need a pdf file made from a presentation, a paper, a web page (when you need to save a web page, preserve the formatting but don’t want to have a subdirectory full of images and what not – or just to email the web page to someone “as is”) – whatever.  Primopdf does it – and does it free.  In fact, it was because I was using primopdf for the umpteenth time this morning that I am writing this.

Cannot forget the two biggies – the two applications I spend more time in than any others (although the next two are close contenders for the top slots too).  Firefox and Thunderbird.  Firefox is incomplete without these free extensions – ForecastFox, Adblock, Enhanced History Manager, IE View, StumbleUpon (this rocks), Tab Mix Plus, SwitchProxy Tool – and a new extension I’m testing but have high hopes for – I’ll talk about that some other day.  In Thunderbird – which I use for both EMAIL and tracking RSS feeds (blogs), I’ve found the need for two extensions.  I have to flip/flop SMTP servers frequently depending on where I am (behind the firewall at work – or not).  Show SMTP Username does that for me easily.  Related functionality with regards to my proxy server in Thunderbird is the Proxy Button – it just turns the proxy ON or OFF.  Very simple, very needed.

Close runners up to these two however are gaim and putty. Gaim is what I use for instant messages – seems to be getting more of a communication path for me every day.  Putty is just a really good telnet/ssh client.  Between those four – that is where I spend much time (hey, you need putty to run sqlplus after all…).

Filezilla is probably the best all around ftp/sftp client I’ve used in a long time.  Wish there was a linux version.

I’ve been using Konfabulator – on and off.  I use one widget predominantly – a network traffic monitor.  I’d be willing to switch – if only someone knows where to get the exact equivalent of xnetload for windows… I’d be very interested.  No bells, no whistles – just up/down load rates and total transferred – that’s all.

I use autoruns from time to time just to see what evil little startup program snuck in (although with the MS anti-spyware, currently “free”, the need for this is perhaps declining).  I used to use startup cop, but that isn’t maintained anymore.  This does nicely.

Unison – which I’ve written about before is still definitely on the list.

VNC, it just rocks.  Maybe I should have put this up with gaim and putty actually.  I use it a lot to get to my Mac, Windows print server, and various linux boxes at home and work.

As for services – Yahoo Calendar, Yahoo Mail (although I pay for this in order to get a real mailbox and SMTP), Flickr for photos (but I pay for this now to get more space and more ‘categories’.  You can do a lot for “free” these days.  I was the “web master” (remember that term) for my daughters soccer team.  In the past that might have meant getting a hosting service, renting space, designing web pages, manually doing a lot of stuff.  In 2005 – I got them a blogspot account, a flickr account and a yahoo account.  We had email, calendar, photo galleries, and a place to congregate and announce things and comment on them.  It took about 5 minutes to get it all setup.

There are a couple of others such as FireTune for Firefox, Ypops, rlwrap but the above are the “biggies”.  The list of “for fee” software I use would be a little longer – maybe about the same size (seems like everything for my Treo is “for fee” and much of it “a year at a time” which I’m not sure I like).

Anyone have anything to add?  Someone want to try to talk me out of one that I use for something better (always willing to try)…  

Thursday, December 22, 2005

Seven Degrees...

Everything is tied together, like a big sweater – you pull at one string and the entire thing unravels. That is how I felt this morning reading the blog of Alf A Pedersen. I found myself in agreement once again – but would have said it differently. I would have said it as:

Applications come, applications go – the data however, the data stays forever. Erase my .exe files as you wish, but leave my .dbf’s alone – without them I am lost.

Anyway, that blog linked to this article. The article was the subject of the blog but as I was reading it – it got back to the asktom rewrite I’m thinking about 23 our of 24 hours a day right now (still stuck in “thought” mode – lots to consider).

Tags – that is what I got from it. I’ve seen them on flickr and other blogs let people “tag” things. We’ve been talking about metadata tagging on asktom (and how I’m too lazy to do it). Well – I think I’ll let every page be tag-able and searchable by the tags.

Now the only question is – do we have a list of ‘tags’ or do we let the tags be anything anyone wants (which will undoubtedly lead to people tagging items with their names or some unique string – sort of like setting up bookmarks of “their interesting stuff” which in itself could lead to some interesting discoveries (data mining discoveries) in the future.

I’ll have to give this more thought – but I found it interesting that a rant on “it is about the data” (not really a rant…) led to “tags” led back to what I’ve been thinking about. Or maybe it is just that if you are thinking about something hard enough – everything you see will have parallels to it.

Probably the last part – you see what you want to see from something.

Wednesday, December 21, 2005

Arg, ugh, umm.....

Support calls...
Here is one of mine, with “advanced support” and my ISP…

support: this is Todd, I understand you are having a problem...

me: describe the situation, express my JOY at being out of warranty (given that they keep saying "oh, what, it is working again”, great - talk to you later, no follow up root cause analysis) - so no overnight delivery of new hardware (I’m sure the Christmas holiday won’t delay my two day delivery – oh wait, that would actually be over the weekend – not). Explain how support has described to me how routers normally generate 25MB of traffic every day - they see it all of the time... (umm, no, they do not – but the support guy says “you have to believe me sir, I see it all of the time). Express my sincere happiness with the competency of support overall. I learned a lot of new things from them recently about networking I never knew before.

Then I do say "but it appears to be working right now"

support: no it is not.

me: umm, sure it is.

support: no sir, you are not on the network.

me: umm - I can ping google, sure seems like I'm connected.

support: yeah, but are you on the 'internet'. According to us, you are not on the network, therefore you are not on the ‘internet’ (great reverence for this word “internet”, like it is “special”)

me: well, I'm pinging google, google is on the internet, so sure - I'm on the internet (getting sort of incredulous sounding by now)

support: yeah, but does your browser work (reminds me of the last support call - the guy wouldn't believe I was on the network until I confirmed that my EMAIL PROGRAM functioned - for him, the internet and networking is "email", never mind I needed to have a VPN tunnel set up to work already in order to access email…)

me: (biting my tongue really really REALLY hard at this point) - well, not that it makes a difference (I mean, how could I ping google otherwise???) but yes, I can browse the web too

support: oh, that is strange - you are not on the network... I don’t see how this could be.


Right now, I am less than pleased with my new ISP. We won’t even get into a “quota” discussion right now.

Posted via a reliable EVDO card. It is all about redundancy isn’t it. I have ISP (well, not really, down more than up), EVDO card, Treo with GPRS/edge (workable over the hot sync cable) and – yes, dialup as a last resort. Guess I can always go to Starbucks as well and get a coffee and broadband (T-Mobile, full access to all of their hotspots – dig it).

Feedback and then some...

Wow, that was a lot of feedback on my last entry.  53 and counting.  Much of it excellent suggestions that I’ll be keeping in mind (except for some whacky font idea – if I cannot pronounce the font, I won’t use it… only kidding Howard).

The one suggestion to not have the “queues for asking a question” close will not be considered however.  Asktom used to work that way.  It was an email link.  I couldn’t go on vacation, do my day job, take a break – anytime.  That and it just didn’t scale, I couldn’t keep up with the inbound questions.  Enter – the queue.  I control how many new questions I accept.  I try to get a couple of hour turn around if at all possible – a day or two at most (usually over the weekend – or when an emergency comes up).  In order to get a fast turnaround, I must control the number of inbound questions.

I did think of a different queuing idea though.  Let me know what you think.  I’d let people “sign up” to ask a question – this line could be as long as it wants to get.  Now, every time I opened the queue up for new questions (I normally limit it to about 10 or 15 at most at a time), I could notify 20% of that number (say 2 out of 10) via email that “you can ask your question now” and give them a link that would let them do so.  That would let the other 8 out of 10 questions go to the public at large.

That way, I could tell you “where in line” you were (how many in front of you) and based on the rate I’ve been taking questions over the last period of time – how long it might take to get your slot…  Before you got into line – you could see how long it was as well – and how long it might take (that would maybe keep it from growing infinitely long?)

I’m not sold on the idea myself – for if I do the average of 200/300 questions a month, the “line” could get quite large (and full of bad email addresses as they change over time).

I am going to close questions – after 4 weeks – except for emergency bug fixes (sort of a private message you can leave that I WILL read – as I’ll have it notify me).  That I’m pretty much set on.  To cut down on the use of the followup as a “let me ask the same thing, but differently, with my tables etc….”.  I really want to have more “shorter” question/answers out there.

I like the “user metadata tagging” suggestion – that’ll likely be there.  You can tag the article with something you thing people might use to “find” it later.

Regular Expression searches – interesting, but a hard nut to crack.  I use Oracle Text to efficiently index – regex on the clobs (plural) will be not so efficient I think.  Will have to research that one.

But lots to absorb there, thanks much for it all.

Tuesday, December 20, 2005

Asktom Redux....

Ok, by printing it – it means I’ll be obligated to do it.  I want to rewrite asktom from the ground up.  I’ve been rumbling around that I would do it for a while now – this’ll help make it happen.

27,614 questions after it started. 68,210 review/follow-ups later – it is time.

In addition to what the site does now, here is what I want to add:

  • Non-fixed width screen.  Right now I wrap at about 80 characters.  Don’t even ask – I just did it that way – that is why.  There will be a [code] thing to prevent wrapping – but it’d be nice to let some things wrap.

  • Mixed fonts/markup – support for some “tags” like you see in various forums like [code], [b], [I], and so on.  No, there shall be no smiley support whatsoever.

  • Factoring out of all URL’s (so when they move the documentation on me AGAIN, I can just figure out a neat update)

  • No more follow-ups after “n” units of time.  That is – the closing of a question.  I will allow an “emergency button” – because I despise wrong or misleading information.  The emergency button will allow you to comment, and I’ll see it and either rectify it or provide you a response why I think it is OK the way it is (a dialog can ensue).  This will let me take more new questions, but still preserve the mantra behind the site – that of “let’s get it right” (things change, I make mistakes).

  • An upload feature, so when I request it -  a button shall appear on your question page as we are going back and forth that will allow you to attach extra information like a big statspack or a trace file or an dmp file –whatever.

  • This will be questionable – but I think I need to do it.  In order to ask a question – it will be a two step process.  You’ll input your question and then receive an email saying “click me” to have the question actually get submitted.  I have about a 10% failure rate on email addresses.

  • OTN “cookie” support – so if you are logged into OTN, I’ll already know who you are and fill that stuff in.

  • WAP user interface (since I have a treo – this’ll be a mandatory feature indeed)

  • Like to have a way to show you “what’s new since you last came here” support.

  • The ability to create an “account” optionally – to let you store some preferences but mostly to let you change your EMAIL address so the “your questions” stuff works over time.

Part of what I want to do as well is “full disclosure” – I’ll publish the entire application after the fact (I hinted it would be nice to ‘open source’ it in another blog but go no takers on that idea :).  I’d put the schema, API’s and htmldb application on htmldb’s studio site for download.

Ok, now your turn (I’ve forgotten many things I want to add – I’ll remember them and add them over time here…)

What would you change?

Question – should Q&A pages be broken into smaller pages or left “monolithic” pages as they are now?

Monday, December 19, 2005

Perspective...

I thought this map was interesting.  It shows a world map where each country is scaled to its population size.

Normally, Canada would be huge – here it is a thin slice.  It was interesting to see Australia as a rather small blip – but I was really surprised by the size of Italy.  Japan was also surprisingly large scale wise.  Russia – normally very big on a map, not so big.

But it puts things into perspective, doesn’t it.  I thought it was interesting to see.

Sunday, December 18, 2005

Metalink redux...

Metalink has been redone. This is cool for two reasons. Reason number one, they used HTMLDB to do it. That is a nice testament to the tool itself.

Reason number two – they are using Courier for bug reports. The code snippets will finally be presented correctly (and is the reason for me using courier today, in honor of my favorite font of all time).

Saturday, December 17, 2005

Thanks to Howard...

Thanks to Howard, the blog looks a little different and a little better if I don’t say so myself. Surprising what a little bit of color, even if it is Grey – which I like – can make.

Hope you like the new look – I know I do.

Flash Forward...

A question I get a lot goes something like this:

What <technology/language/feature> should I learn in order to be best positioned for the future in order to increase my marketability in the future?

There are variations on this, like “should I be a DBA or Developer”, “is management a good career path”, “is management the only career path” (somehow intimating that all paths are just hobbies).

I just answered this one (again) on asktom and basically said it boils down to “soft” skills like common sense, communication skills, excitement about learning new things and so on. In short, a particular language or technology? No, there are none that will assure you of increased marketability in the future. A good track record – with the ability to think, be creative, be flexible, utilize your common sense – that can.

Then, later in the week, Kathy Sierra posted this… It says almost the same thing – using slightly different words of course (and a picture, always a neat graphic). Very nice.

I agree very much with her sentiment expressed there:

"How many of us over 30 are working in the same field that looked attractive to us (or our parents) when we were 14? I'd encourage anything that requires thinking, creativity, and focus."

If someone would have told me what I’d be doing at age 40 when I was 20 – I would have laughed at them, or at least not understood the words coming out of their mouth since bits of what I do would not have been comprehendible in 1985. To tell me I would spend some amount of time talking to a room full of people – sometimes with an audience numbering into four digits. To tell me I would be writing so much. Well, I couldn’t envision it back then (heck, I hadn’t really even touched a computer back then, I had no clue what I was going to do).

None of my career has been “goal oriented” so far. I never had a plan, I don’t even know how you would have a plan to do what I do now. I certainly never chose a technology or language as a means to ensure my marketability in the future. I did however jump at the chance to try new stuff – to move around, to never do the same thing year after year after year. I volunteer for those opportunities, still do. There have been what I thought were dead ends I got into – that turned out to be some of the best things to have happened to me.

So, my advice, be flexible, try new things, see what you like to do and what you are good at doing and constantly “refine” what you do over time. If you are in an environment where that is not possible – look for one that makes it possible. I’ve volunteered for projects that were far away from where I lived because they looked interesting, I’ve left a job because it became such a drag that I couldn’t envision staying there for another day. Change is good, even when it is bad.

Nothing wrong with having your hobby as your job either…

Friday, December 16, 2005

A slightly new look

Never mind, I didn't like the wide look - and neither did anyone else :)

We resume our regularly scheduled programming....



A slightly new look today – I noticed a lot of people were going for the “wide” look and feel and thought I’d give it a try as well. The links to other blogs and archives for this blog are now at the bottom of the front page (with an anchor link at the top to find them easily enough).

It will give more room for examples/code samples when I use them – and gets more to fit on the screen at one time – which I like.

Anyway, feedback is accepted (but not necessarily always followed!)

Stumbled upon this page – it reminded me of a recent blog entry. Some of my favorite quips/quotes from that page are:

  • Arguing that Java is better than C++ is like arguing that grasshoppers taste better than tree bark. (Thant Tessman)

  • Being really good at C++ is like being really good at using rocks to sharpen sticks. (Thant Tessman)

  • If you think C++ is not overly complicated, just what is a protected abstract virtual base pure virtual private destructor and when was the last time you needed one? (Tom Cargill)

  • Within C++, there is a much smaller and cleaner language struggling to get out. (Bjarne Stroustrup)

  • There are only two things wrong with C++: The initial concept and the implementation. (Bertrand Meyer)

  • It has been discovered that C++ provides a remarkable facility for concealing the trival details of a program -- such as where its bugs are. (David Keppel)

Thursday, December 15, 2005

Every day...

Every day I learn something new about Oracle I did not know the day before

Thoughts from other blogs...

I track quite a few blogs these days (last count, 39 feeds).  Some work related, some not so much work related.  I was skimming them this morning and hit this piece.  I like the way Alf thinks…  It is the age old discussion – where does the logic go.  Me, I am a firm believer that the closer to the data we keep security and data logic – the better.

If you put security for example out in the middle tier (you know, the CICS transaction layer is what we used to call this piece – I know, nothing useful or cool was invented before application servers but hey – that is another story)  - what happens when the middle tier technology of choice today becomes passé? That’ll never happen right? (it is spelled with all capital letters – CICS, some people pronounce it as “kicks” transactions).  Well, I’m sure we can just reinvent screen scrapers for your middle tier technology like we did for 3278 terminal green screen applications.

And, if you put your security in the middle tier and someone, well, gets around your middle tier into your database – what then?  Oh, no security… Got it.

And, if you put your data logic (like NOT NULL, this field must be a string of 30 characters or less, this is a number, this is a date that is less than this other date over there, the value in this field must exist in this table over there, this is unique, when the status code = ‘ACTIVE’ – then this field must be unique, and so on) in your middle tier… What happens when the next cool application comes along (and doesn’t quite remember all of the rules?).

I could go on – and do in my seminar.  The optimizer wants those integrity constraints.  The data wants the protection of security (data hates to be exposed like that).  I love to get “algorithms” from middle tier programmers that purport to enforce data integrity – especially integrity that crosses rows in a table or crosses tables in the database.  It takes about 30 seconds to come up with a multi-user scenario involving 2 or 3 users that causes bad data to be created.  (Programmers still think very “linear” I find – not much thought to multi-user conditions.  Understandable since they treat the database like a black box and don’t really get how concurrency controls are implemented anyway).

The next blog I was reading was “We Do Not Use Blogs”.  Mogens made a good point this morning – one I make when discussing statspack.  It is very unlikely you can find the root cause of system wide slowdowns with a statspack report.  It is somewhere to start, but it is unlikely you’ll discover the root cause with it.  It can give you places to start looking, but it is unlikely in my experience to find the “answer”.  Oh sure, you can get lucky sometimes – but most times, no.  You need to dig a little deeper.

I do disagree with his pronouncement of this stuff as not being useful.  I have found places to go looking from a baselined statspack (from when the ‘system’ was ‘good’) compared to a report from when the ‘system’ was bad.  Looking for major changes (to help answer the question “what has changed” when the answer from humans is invariably “nothing has changed of course”).  While I might not be able to answer the final question “what is wrong” from them – they do give me clues where to start looking.  Else you have to start looking at everything.

Tuesday, December 13, 2005

VMWARE 5.5 ...

VMWARE 5.5 rocks.  It changes everything.  At first, I wasn’t too excited about getting it – based on HJR’s blog entry calling it a “non-event”.  But it kept nagging me so I finally checked out the “what’s new” sheet myself.  That is where I read this interesting blurb:
Experimental support for 2-way Virtual SMP
Assign up to two virtual processors to a virtual machine. Users can create more realistic and powerful development and testing environments when working with multi-threaded, resource-intensive software. This capability is available for all supported configurations of 32-bit and 64-bit host and guest operating systems running on multi-processor host machines, including dual-core and hyper-threaded, uni-processor machines.

I read that and immediately started the download.

I have an 2 cpu Dell machine in the basement I use a lot – my main desktop type machine (it is a 10lb notebook) has a hyperthreaded P4 in it so – I was very interested in SMP support in vmware.  Normally, vmware uses 100% of one cpu when it is doing something really intense.  Now with this setup, I can get 100% of both cpu’s going.  Huge difference in performance.  The main reason this is “good” – Oracle algorithms change radically when cpu_count goes from 1 to more than 1 (but don’t set it to more than 1 on a single cpu machine! It won’t be “a good thing”).  In order to do tests of how something might scale (based on latch usage and such), I always had to get to my larger machines.  Now I can do some of that on the road easier (and demonstrate the differences too – I could only report “what happened on another machine” instead of showing it).

Not only that – but the 2 cpu VM’s run faster on my machines so far than the 1 cpu VM’s – by a measurable difference (we are not talking fractions of a second here, it is so far significant).  In order to test, I installed the same OS (red hat AS 4.0) twice using the same options – only one time the SMP version built itself and the other time a single cpu version.  Then I installed 10gr2 twice on both VM’s.  Other than one having 2 cpus and one having only 1 cpu – they were configured identically.  The database runs measurably faster doing cpu intensive operations on the 2 way VM.

So, I’ll have to disagree with Howard as to this being a “non event”.  The one thing I needed in vmware was this feature (SMP support).  It was available only in their high end server product before, now that it is in the workstation offering – I can use vmware for even more stuff.

Only downside, now I have to rebuild some VM’s… But actually, that is a good thing – cleans them out.  This time I’m going to keep my Oracle installs separate on linux (10gr2 in its own vm, 10gr1 in its own and so on).  It was handy having them all in one, but there are advantages for having them separate.

Saturday, December 10, 2005

Zurich Part II...

Just went out to dinner with one of the people that organized the Zurich seminar and now I know why it was so successful.

There were exactly 42 people there for three days. If you don’t know why 42 is so special, just google 42…

This is a shot of the street my hotel is on – had to wait until he night to get a picture of it that does it justice:
IMG_1685

They really go all out here for the holiday season – looked really neat walking around.

I noticed that Laurent has blogged a bit about the seminar here, here (with pictures from a great dinner he arranged) and here… Glad to see that I said a couple of things that the first (and only) Oracle Certified Master in Switzerland had not yet heard about!

Zurich...

I’ve spent most of the last week in Zurich, before that I was in Oslo for a one day seminar.

I just finished a 3 day seminar here in Zurich however with Oracle University. They even made t-shirts for everyone which I thought was pretty cool:
IMG_1683
There have been t-shirts given away at seminars before, but never an “asktom” one – I wasn’t expecting that, they did it on their own and handed them out the last day.

This was a very good seminar – usually we go from 9am to 4/4:30 pm each day and maybe finish up a little early on the last day - but this time we did 3 solid days from 9-5 and didn’t even cover 100% of the material I normally do (got most of it). The audience was really interactive – I thoroughly enjoyed that, lots of questions, lots of interesting questions. I picked up a new idea or two myself as a result.

The venue I talked at was the Zurich Development Center. It was a pretty nice place as far as conference centers go. It did have the strangest way to label floors however:
IMG_1632
When they first told me to take the elevator “DOWN” to floor six (I walked in on the ground floor), I thought maybe the got the English words backwards – but no, they really meant to take the elevator DOWN to six from the ground floor. It was the strangest numbering scheme, but it worked…

Today I walked around Zurich taking the sites in and around town. Walked for a couple of hours – lots to see. Only wish it had been a couple of degrees warmer.

Anyway, back home tomorrow – with no travel scheduled for an entire month. That’ll be nice for a change – should be able to get caught up on everything and enjoy the holidays.

Tuesday, December 06, 2005

The need for speed...

The need for speed. Or not. It seems to be coming up more frequently or maybe I’m just getting more annoyed by it. “No time to do it right, always time to do it over”. That phrase is also known today by the euphemism “refactoring”. ‘Extreme Programming’ and ‘Agile Development’. Extreme programming (XP) isn’t so bad but it does claim to be brand new (saying it was invented 7 years ago). Funny, but I remember using a process that looked suspiciously like that almost 20 years ago. Sure, we didn’t call it that but it sure followed the same path. Programmers were at least paired up, sitting in the same room (we had rooms with doors back then), working together. Typically in a Jr/Sr developer pattern (mentorship was a big deal at the company I started with fortunately). Regular peer reviews. Incremental releases to the end user. Unit testing. It had everything but the name.

Recently, there has a been a thread on Asktom regarding XP and that it removed the need to have comments/documentation of the code. I’m afraid I’m in total disagreement with that concept. The theory is “the how and the why of the code is known in part by the entire development team and we will pass this knowledge down from generation to generation by word of mouth. XP makes the code (due to coding standards) so readable, comments are no long necessary”. I just very much disagree. One of the come backs was “well, comments are frequently out of date with the code”. That to me is a failure of your coding standards and peer review process then – if your standards for coding are so good that the “code is the comment”, then your standards for coding can ensure the comments/documentation are up to date as well.

Additionally, there is sometimes a huge difference between what the code does and what the code was actually intended to do. These are referred to as bugs usually. The code might be incredibly readable, but if the code isn’t doing what it was truly intended to do – so what? We need some commentary as to what the code was to accomplish. I’ve seen that many times before. In fact, someone just put up a pretty good example of that.

Then there is Agile Development. It has a time and place, but to use it everywhere is wrong. I bring this up because of two recent blog entries I just read. The first is by Kathy Sierra – on the need to slow down sometimes… I’m like her, I work on 10 things at once (attention span of a fly sometimes) usually – but for some things, you just have to sit down and plod through it slowly. Writing a chapter in a book comes to mind. That is something I just have to do from start to finish, slowly, in sequence, with a plan. The other blog was more to the point. “Agile Programming”, when applied inappropriately, is a mess. Worse than a mess, a disaster.

There are many kinds of software out there, there is no one size fits all from a development strategy. There are many kinds of tools out there, there is no one size fits all. There are many , there is no one size fits all.

In closing – Never say Never, Never say Always, I Always say. Figure that one out.

And just for fun… A quick movie that made me laugh.

Thursday, December 01, 2005

Random Things...

A different way of looking at database constraints

I didn’t entirely believe Scott when he IM’d me from the airport that this really happened. But I saw it on the news that night and he has the pictures to prove it…

I’m going to start calling this guy the vagabond. He has the blog site of the week (no really, this is the “last time” he says…) and no fear of rewriting his site at the drop of the hat. Me, I’ve been meaning to start an asktom rewrite for many many months (maybe I should open source it… get everyone else to do my work…)

Excellent advice from Sue Harper (a very smart Designer/Jdev/Forms/etc person)…

Makes you think, “what are these people thinking”. Like I really want gooey cheese that close to my machine.

Kathy is back, after a hiatus. Glad to hear she is feeling better.

Mogens Norgaard has started a blog. The word “irreverent” might pop into mind sometimes

Making fun of IE on Gizmodo. I laughed at the comment about "when you find out what does makt it crash, let me know so I can do it too".

Move it, that is all, move when you talk.