November 16th, 2008 Matt
I’ve been working on a client site recently, where there was a massive restriction on what could be installed on the computers, and the registry was locked down.
Now I think this is fine – security is important and all, and obviously this is something that the client has enforced. But, I like to use Firefox as a browser instead of Internet Explorer, and always use the wonderful UltraEdit as my text editor.
Client restrictions allow me to use a USB stick, but not to install anything on the machines, so I started to look at whether you can run some applications from a USB drive rather than installing them on the client.
Firstly,I emailed the guys at IDM Solutions, who make UltraEdit. The answer was that you can’t install it onto a USB drive, but if you install it onto a hard drive and then copy the files onto USB, it works. Hey presto – the first program was working for me!
Then I started searching for more portable applications, and found this site. There is a whole range of applications that you can download and install onto USB, plus a handy little menu program (with backup software) to manage them all. I think that performance is slower than from a hard drive (since it’s reading from the USB), but I’m using such a slow network that it’s not really an issue! I’m just glad to have Firefox back working, which is what I’m using now.
One final thing to add – Portable Apps is completely free as well! Now that really is a result – so good that I’m off to play Portable Sudoku now…
Posted in General Computing, Non-Oracle | No Comments »
November 5th, 2008 Matt
I recently removed a file in UNIX accidentally – I was running commands from my command history and thought I was after the second most recent command, rather than the third most recent command.
Luckily, I’d kept a copy of the file on my Windows system, so all I wanted to do was to put the file back. As expected, though, when I put the new file over, it took the UNIX timestamp rather than the Windows one. One of the first things that I check for when comparing a development and production environment, if something works in one environment and not in the other, is the timestamps on the two files – if they are the same then the chances are that the files are identical. This isn’t always true, but I’ve always found it a good starter for 10.
So, now I have a file in UNIX that is dated today, when it should have been date three months ago, and I wanted to change the timestamp. In Windows, I’ve got a utility that I can enter the new timestamp, and it updates the file information – in UNIX there is a standard command to do it!
If you run the touch command, you can provide a timestamp that it puts against the file, so all I needed was to run
touch -t 200703062257 [filename]
and the system set the timestamp on the file to 06-MAR-2007 at 22:57 – exactly what I wanted to hide my error in deleting files!
This is probably old-hat to someone who knows UNIX well, but it saved me having to remember the dates that I messed up files, and at least now I have somewhere I can always search to remind me how it’s done!!
Posted in General Computing, Technical | No Comments »
September 10th, 2008 Matt
I was rooting through the PL/SQL fora on OTN recently, and found a couple of interesting posts about testing.
Firstly, I found this one entitled " Is testing really matter at PL/SQL"
The gist of the post is "do I need to bother testing my PL/SQL?" The OP asks the question because he’s finding it hard to write the tests to do it! It’s an interesting approach – maybe once the code is complete you should just install it, pack up and go home.
Some years back, I worked with a client where this was exactly their approach – the code compiles successfully, therefore there is no need to actually go through the hassle of having to test it as well! Needless to say, when they went live, there were a number of issues, since it didn’t perform as they expected, both in terms of what it did and the performance of the code.
Not an ideal solution, by any means! It may be difficult to do (I’m in the middle of running some complex tests at the moment, which take half an hour to set up and at least an hour to execute each one of the 50 tests!), but if you don’t test it, then unless you are a super-programmer, then it’s not going to work!
The second post looked quite a good one – asking about calling procedures using dynamic SQL. However, in the middle of the thread, comes this post , where the poster suggests that because since "procedures are not formed in an object oriented fashion", it makes it difficult to test them, and so really you shouldn’t bother with testing!
Again, a novel approach to software development – it’s not object oriented, and it’s a bit tricky to test, so we don’t really need to do this!
Hopefully, these are the exceptions to the rule – if it ain’t tested, it shouldn’t be going anywhere near production.
Posted in General Computing, Technical | No Comments »
September 5th, 2008 Matt
Some time back, I wrote this post about where should people ask for help for Workflow development and advice – I just wanted to remind people about it
The main reason is that recently, I’ve been inundated with a series of emails from people that I don’t know asking me for help with specific Workflow-related problems. Whilst I’m flattered that people are asking my opinion and advice on these things, one of the reasons that I created the WorkflowFAQ forum was so that people could ask questions there and share both the problem and the solution with others. Plus, by sharing on a forum, there may well be other people who have differing opinions of how / why you should do things in a certain way, which I always welcome, and we then build up a repository of information that is easily searchable for anyone. I will try to answer questions that I receive, but bear in mind that I spend less time on email than I could do (which is a deliberate ploy), I’m also writing my next book at the moment, as well as working full-on with a pretty demanding client on an incredibly interesting project. If you post your question on the forum, then it may well be that you get a response quicker than by sending me an email – if I spot something that I disagree with on the forum, I’m usually pretty quick to correct it / make my opinion known.
Of course, don’t let this disuade you from asking questions via email, but it’s something to bear in mind – also, bear in mind that I am more likely to respond if I know who you are rather than an out-of-the-blue email that begins “I’m having some problems with my Workflow system…”
Finally – if you want a quicker response / more formal advice / more detailed explanation of things, I can always make some time available for the right price
Matt
Posted in General Computing | No Comments »
September 3rd, 2008 Matt
A while back, I wrote this post about how to make sure that you ask for help in the right place.
I then remembered reading another excellent example of how not to ask for help. Having found the right place to ask questions, there is (or should be) a certain etiquette about how to ask for help / respond to responses and so forth. I think that this post on OTN shows exactly how NOT to do it!
In my search for guidelines for posting on forums, I found this excellent article in Shay’s blog.
If you ever post on OTN, Metalink, WorkflowFAQ, or any forum for that matter, it’s well worth a read – and even better if you follow the advice / guidelines!
Posted in General Computing, Non-Oracle | No Comments »
July 16th, 2008 Matt
I was reading recently about the ICANN decision to have a new range of top level domains (for a couple of hundred thousand dollars or so…), which would open the web further in terms of addressing. The thought of a new range of web addresses could be interesting – for example a .nyc for things New York based etc. or just having .coke as the domain name (or .pepsi for that matter).
But one question that comes to mind is what would go in front of the dot in the new format? So if Coke register .coke as the domain name, what would the website be? It is just www.coke ? Will users actually find the website – and more importantly, will search engines?
I’m not going to be rushing out to register .workflow by any means (since I’m a few hundred thousand short at the moment!) but also because I’m not convinced about the whole idea – I guess it’s a case of wait and see, but by that stage it could well be far too late…
In my search for more information about the whole concept, I found this interesing post , which seems to reflect my thoughts as well.
Posted in General Computing | No Comments »
July 14th, 2008 Matt
I was looking at a post on AskTom this morning, which was looking to "Select entire rows with most recent date only. No duplicates" and wondered how Tom would have approached it. The question had been marked as for version 8.1.7 of Oracle.
However, looking at the query that the poster had included, there was a new word that seemed strange to me – readuncommitted. I’d never seen it in an Oracle query before, so I looked at more of the code:
Select Jobstop.PODdatetime Date_Time
, job.routenumber Route , Stop.Name Location
, Jobstop.PODName
, Case When Jobstop.PODSign IS NOT NULL Then 'Electronic' End AS PODsign , JobStop.ArriveDateTimeSource ArriveScan
, Piece.Reference
From Ordermain with (readuncommitted, INDEX=OrderDateOrderID)
Left Outer Join Customer with (readuncommitted) on Customer.CustomerID=Ordermain.CustomerID
Left Outer Join Job with (readuncommitted) on Ordermain.OrderID=Job.OrderID
Left Outer Join Jobstop with (readuncommitted) on Job.JobID=Jobstop.JobID
Left Outer Join Stop with (readuncommitted) on Jobstop.StopID=Stop.StopID
Left Outer Join Jobstoppiece with (readuncommitted) on Jobstop.JobstopID=Jobstoppiece.JobstopID
Left Outer Join Piece with (readuncommitted) on Jobstoppiece.PieceID=Piece.PieceID
Where Ordermain.Orderstatus IN ('N', 'A', 'I','P')
And Left(Ordermain.Service,3) NOT IN ('LEA', 'FUE', 'Wai', 'Mon')
And Ordermain.Orderdate between '9/21/07' AND '9/27/07'
And left(piece.reference,2)='TL'
And customer.customercode='331'
Order By Piece.reference, JobStop.PODdatetime
There’s no way that this could be a query for Oracle 8.1.7 – the ANSI join syntax didn’t come into the database until version 9i . So, maybe it’s a 9i query then, and the poster got the version wrong (unlikely, but possible). No Oracle query that I’ve seen uses the "readuncommitted" term – this would be a really bad thing to do, as far as I can see.
Hmm – different syntax, really bad ideas for data selection. Then it hit me – it’s a SQL Server query!!
Lesson one in getting help – make sure you ask in the right place!
Posted in General Computing, Non-Oracle | No Comments »
June 28th, 2008 Matt
Over the years, I’ve added comments and provided advice on a number of topics, but obviously primarily related to Workflow development. So what’s the best place for people to go to ask for Workflow help?
AFAIK there are only three places where you can ask for help – I’ll give my (slightly biased!) analysis of each here.
WorkflowFAQ
Obviously, I’m going to be biased here, since it’s my baby! There are a couple of advantages that asking for help here gives you:
1 – It’s not linked in to Oracle in any way, which means that some of the advice that you can get here may be more open than you might find elsewhere. I’m not above critisising the product when it lets you down, and will highlight limitations / problems with the product that I find (see this thread for an example!)
2 – There is a growing community on the site, with more and more developers joining in with comments, advice, guidance (and problems!).
3 – You can upload code! If you use the other support forums, you can describe your problem, but if you want to display a Workflow diagram, you need to try and convert it to text to type in – this is a major flaw in their implementation. If you can’t upload the .wft file or SQL code, then it makes getting support a lot harder – particularly if English isn’t your first language.
So what’s wrong with WorkflowFAQ?
1 – In theory, the backup that you can expect is pretty limited. In a perfect world, if you ask Oracle for help, then the whole of Oracle is there to resolve your issues (that’s way you’re paying them a big support fee for, isn’t it?) whereas an independent forum doesn’t have that muscle behind it. Of course (as my comments on Metalink below show), that isn’t really the case. I’m not convinced that the quality of the response from Metalink is any better than on WFFAQ.
2 – It’s not particularly well publicised. Well that’s where you can help!! If you’re reading this, then tell someone about it. Tell someone about the forum. Tell someone about the book (PLEASE!). The more people that get involved with the forum, the better it becomes, and the more likely it is to continue. Since I started the website, I’ve posted more comments to OTN than I have to my own site, but traffic is increasing – please help it to get better.
Metalink
Hmmm… What can I say about Oracle Metalink. There are two places that you can start – either raise a TAR, or use the Metalink forums. I’m going to disregard raising a TAR at the moment, because it’s not something that I can post to, and just focus on the forums. So let’s start with the positives:
1 – It’s occasionally monitored by someone from Oracle who knows a bit about Workflow. There are some good guys in the BDE team at Oracle who have written some useful scripts and know quite a bit about Workflow development, and occasionally they have time to post some entries here to help people out.
That’s the positives out of the way – let’s look at what’s wrong with Metalink.
1 – You have to pay Oracle Support to get access to the site. There are a number of posts that I’ve made over the years under different user names depending on who I was working for at the time. When my current contract runs out, I’ll be silent on the forums there for a while until I can get another user ID. So unless you are paying for it, you can’t use it (always a bad idea when all you want is to occasionally ask for a bit of advice!).
2 – If the problem requires any input from Oracle that is more than a throwaway comment, they will invariably respond with a “raise a TAR about this” message – this gets the message out of the way, and if they are lucky you’ll just give up and find your own workaround. IMHO, the level of support that Oracle provides through the forums is pretty poor – for many years there were only 2 regular contributors from Oracle in the forum: myself and a guy in New York called Satish Paul. Neither of us work for Oracle any more…
3 – You can’t upload any examples here – if you need to upload code then you need to raise a TAR or cut and paste into the post. The site is good for asking straight forward questions, but not good for anything that involves explaining a detailed scenario when an example of the workflow file and code would help explain things clearly
OTN Workflow Forum
The OTN forums are pretty good, to be honest. There is a quite a large community involved, considering that Workflow is still perceived by many as a niche product. The forum so far has averaged 320 threads a year, which isn’t that much to be honest, which averages at something like 5 or 6 new posts a day in the threads.
So, what’s good about it?
1 – It’s free! I’m all for having free discussion and support sites. A recent presentation by Ray Lane (former President of Oracle) highlighted that somewhere in the region of 30% of customers felt that they were paying for bug fixes. This seems low to me, given some of the products I’ve worked with in the past…
2 – It’s reasonably well published. OTN has a wide range of forums, which are free to join, and there are direct links from a number of pages on the Oracle site. This is one of the problems that I have with WorkflowFAQ – how do I get it out there so that people are aware of it? The OTN forums are at least well published.
And what’s wrong with it?
1 – Easy one again – you can’t upload code samples! And if you don’t use their mark-up to show that your post should be in a fixed-width font, it “helpfully” strips out all the padding you put in with spaces. So if you spend time converting your .wft file to an ASCII representation of the diagram, the forum will remove all the “unecessary” spaces for you – d’oh!
2 – The people that tend to post there are the “same old faces” again. The most active member in the forum is (perhaps unsurprisingly) WorkflowFAQ.com! Of the top 10 contributors to the forum, half of the names work in Oracle product development for Workflow. Their most recent contribution was June 22nd, 2005. The product manager hasn’t posted anything here since 2003! (Contrast this with Mark Drake, the product manager for XML DB in that forum!) I’m not sure why the Workflow product development team are not interested in the forum, but it would be great if they helped out!
So where should you post your questions?
I tend to be reasonably active on all three of the above sites. Obviously my own takes the priority, then the OTN forums, then Metalink (since I’m relying on someone else to give me a login!) That’s the order that I would post in, because I think that that is the order of support sites where you are most likely to get an answer to your problems.
No doubt there are more positives and negatives to each of the sites above, but it’s just my thoughts on the quality of each site. Please feel free to comment and rate the article.
Matt
Posted in General Computing, Technical | No Comments »
May 25th, 2008 Matt
I’m not sure how many people are aware of Linked In, but it seems to be a pretty cool idea.
Basically it allows you to connect with other people around the world, to share common interests, but also to build a network of colleagues. Almost like a work-related Friends Re-united. It seems to be aimed more at the American audience than elsewhere, but there is a job search facility on the site as well, plus a certain degree of community. I’ve just joined the Club Ex-Oracle community, which seems to be growing…
Registration is free, and then you can contact friends or colleagues either through the system (if they’ve registered), or email them a link to join your network. It seems like a great contractor tool for keeping in touch – if you change jobs regularly, then this could be the tool for you, since it allows you to email your network with news. Finally, you can create an on-line CV (so what’s new there?), but ask people that are in your network to comment on your performance. My on-line profile can be seen here.
Posted in General Computing | No Comments »
May 24th, 2008 Matt
Well, finally I thought I’d create myself a blog. Hopefully I won’t need to rename it – it could potentially get embarrassing to reveal on such a public scale that I don’t really have a lot of thoughts.
So, what am I going to put in here? Good question!
Originally I thought about having a Wiki to store some useful code and hints and tips, but there are already lots of Oracle Wiki sites out there (check out the one at Consultium here which has some good all-round tips).
So I thought that it might be easier to create a Blog, so that I can just drop stuff here and (if you want to!), you can comment on it. The main content will be Workflow related hints, tips and how-to’s – if anyone has anything to add here, then please contact me for details on how to post stuff here. If you want to comment on anything, then you’ll need to register, but like everything on the site (so far, at least!), it’s free to do so. Hopefully this section, plus the forum will provide lots of interesting Workflow development tips…
Apart from the Workflow stuff, I’ll probably add some other posts here of a non-Oracle nature – just general musings and things that I think people might find interesting.
Posted in General Computing | No Comments »