ThE More THe MeRRieR..All AbOuT ICoNS..

Monday, March 24, 2008

Such a good page. A lot more icon can be downloads.
Hence, a good website for developers & web designer.

Fav Programming QuOte

Thursday, March 20, 2008

“Real programmers don't document. If it was hard to write, it should be hard to understand.”
~I seldom document my codes. Got no time maa..!! Unless if am doing under project/customer.

“It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.”
~ I learned BASIC during my upper secondary school. Before that, I was introduced to LOGO programming when I was at primary school.

“Computer programmers do it byte by byte”
~When she stuck..she start blogging..har..HAr..har..

“Old programmers never die. They just can't C as well.”
~Kakaka..I accidentally scored A for C paper during my undergrad...MUahahaha...

“Real programmers can write assembly code in any language.”
~I did not learned assembly language.. How?

“Few companies that installed computers to reduce the employment of clerks have realized their expectations.... They now need more, and more expensive clerks even though they call them 'operators' or 'programmers.'”
~This is what we called knowledge workers.

“Real Programmers don't write in PASCAL, or BLISS, or ADA, or any of those pinko computer science languages. Strong typing is for people with weak memories.”
~I do not have any idea with this programming language.

"Computers are useless. They can only give you answers."
(Pablo Picasso)

~ The programmer more intelligent that computer.

"Computers are like bikinis. They save people a lot of guesswork."
(Sam Ewing)

~No idea. How bikini save people a lot of guesswork

"Computers are getting smarter all the time. Scientists tell us that soon they will be able to talk to us. (And by 'they', I mean 'computers'. I doubt scientists will ever be able to talk to us.)"
(Dave Barry)

~Artificial Intelligent. This is my majoring during my undergrad.

"Hardware: The parts of a computer system that can be kicked."
(Jeff Pesis)

~Always knock my keyboard and mouse.

"The Internet? Is that thing still around?"
(Homer Simpson)

~Mr. Homer are you kidding?

"Controlling complexity is the essence of computer programming."
(Brian Kernigan)

~the more complex the more error..huhuh...

"Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build and test, it introduces security challenges, and it causes end-user and administrator frustration."
(Ray Ozzie)

~I like..!!!

"There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies."
(C.A.R. Hoare)
~I like this too..!!

"The function of good software is to make the complex appear to be simple."
(Grady Booch)

~Always apply this.

"There are only two industries that refer to their customers as 'users'."
(Edward Tufte)

~Got 2..One is IT..and another one is ???

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris."
(Larry Wall)

~Am lazzy and impatience rite now..Muahahah..

"That's the thing about people who think they hate computers. What they really hate is lousy programmers."
(Larry Niven)

~Am not lousy

"A programmer is a person who passes as an exacting expert on the basis of being able to turn out, after innumerable punching, an infinite series of incomprehensive answers calculated with micrometric precisions from vague assumptions based on debatable figures taken from inconclusive documents and carried out on instruments of problematical accuracy by persons of dubious reliability and questionable mentality for the avowed purpose of annoying and confounding a hopelessly defenseless department that was unfortunate enough to ask for the information in the first place."
(IEEE Grid newsmagazine)


"Don't worry if it doesn't work right. If everything did, you'd be out of a job."
(Mosher's Law of Software Engineering)

~Don't understand. need to troubleshoot??

"Measuring programming progress by lines of code is like measuring aircraft building progress by weight."
(Bill Gates)

~I hate software metric.

"First, solve the problem. Then, write the code."
(John Johnson)

~Problem solved once you completely develop the system??

"Fifty years of programming language research, and we end up with C++?"
(Richard A. O'Keefe)

~Ok aper..??

"Software is like sex: It's better when it's free."
(Linus Torvalds)

~Never tot of this..

"The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time."
(Tom Cargill)

~Agree..looks like simple but it is not..!!!

"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are–by definition–not smart enough to debug it."
(Brian Kernighan)

~This will make my pc hang..!!

"If debugging is the process of removing bugs, then programming must be the process of putting them in."
(Edsger W. Dijkstra)

~HAHAHAH..u are rite..!!

10 Programming Quotes and Lessons Learned

Here is a list of 10 programming quotes I picked from this longer list, and what I learned from each:

1.It’s hard enough to find an error in your code when you’re looking for it; it’s even harder when you’ve assumed your code is error-free.
Lesson: Always assume that your code is buggy and code accordingly.

2.Be careful about using the following code — I’ve only proven that it works, I haven’t tested it.
Lesson: Always test your code.

3.Good code is its own best documentation. As you’re about to add a comment, ask yourself, “How can I improve the code so that this comment isn’t needed?”.
Lesson: Write clear maintainable code.

4.Incorrect documentation is often worse than no documentation.
Lesson: Make sure your documentation really reflects what your code is doing and vice verse.

5.Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
Lesson: The number of lines of code is irrelevant in measuring software development progress, measure by what the code does and how fast it does it.

6.Just because the standard provides a cliff in front of you, you are not necessarily required to jump off it.
Lesson: Do not blindly follow any standard, understand first.

7.The most important single aspect of software development is to be clear about what you are trying to build.
Lesson: Understand the problem first, then build the solution.

8.Good programmers use their brains, but good guidelines save us having to think out every case.
Lesson: Understand and use software design patterns whenever possible.

9.Simplicity is the ultimate sophistication.
Lesson: No comment.

10.The primary duty of an exception handler is to get the error out of the lap of the programmer and into the surprised face of the user. Provided you keep this cardinal rule in mind, you can’t go far wrong.
Lesson: Apply exception handling liberally across all your programs. :)

10 Things About Computer Programming You May Not Agree With

Are you a computer programmer? Here is what Half Sigma thinks about your profession:

1. Computer programming is a low prestige profession.
2. As you get older, your desire to completely relearn everything decreases, so you are likely to succumb to the temptation of staying with the familiar technology for too long.
3. Whatever your position is, as a Computer Science person, you are socially classified as a geek.
4. The computer programming industry within the United States is an industry with a shrinking number of jobs (because of outsourcing).
5. Computer programming and IT in general is now seen as the foreigners industry and not a proper profession for upwardly mobile white Americans.
6. Computer programmers face the need to move up to management or likely wind up as underemployed fifty-year-olds, only suitable for lower paying IT jobs.
7. This trend, in which people without computer programming experience manage computer programming projects, is a result of the low prestige of computer programming.
8. If you look forward to one day having your own private office, then computer programming sure isn't the way to go.
9. Computer programmers are cubicle employees, not considered important enough to be given nice workspaces.
10. If you can’t get into a Top 14 law school or a top graduate business school, then public accounting probably provides a better career path than computer programming.

So, if you are a computer programmer, maybe you should change your career and become a database administrator. After all, database administration is one of the fastest-growing jobs in the United States.

I believe that no matter what your profession is, keeping up to date with the “what’s new” in your industry/technology is very essential to career development.

EmplOyEE LooKuP

Tuesday, March 18, 2008

Code use in button. User info will be extracted from another database named User Profile.

path := G_Server : UserLoc;
view := "LsvEmpLookup";

list := @DbColumn(""; path; view; 1);
EmpKey := @Text(@Prompt([OkCancelList]; "Name"; "Select employee name."; ""; list));
@If (@Member(EmpKey; list) = @False; @Return(""); @True);

@SetField("PreName"; @Unique(@Trim(EmpKey)));

EmpInfo := @DbLookup("" : "NoCache"; path ; View; EmpKey; 2);
@If(@IsError(EmpInfo); @Do(@Prompt([Ok]; "Error"; "Details of employee cannot be extracted from the database."); @Return("")); @Success);

tmpManager := @Subset(@Word(EmpInfo; "|"; 3);1);
hEmpManager := @If(@Contains(tmpManager; ":");@Right(tmpManager; ":"); tmpManager);

b := @Word(EmpInfo; "|"; 2);
c := @Word(EmpInfo; "|"; 3);
d := @Word(EmpInfo; "|"; 24);
e := @Word(EmpInfo; "|"; 6);
f := @Word(EmpInfo; "|"; 11);

@SetField("Emp"; @Unique(@Trim(EmpKey)));
@SetField("Emp_num"; @Unique(@Trim(b)));
@SetField ("Manager"; hEmpManager);
@SetField("Dept"; @Unique(@Trim(d)));
@SetField("Div"; @Unique(@Trim(e)));
@SetField("Comp"; @Unique(@Trim(f)))

To prevent user from using File -> Save

Add this code in Query Save of the Form
Create Hidden Field : ActionType
Objective: To prevent user from using File -> Save. User need to click on Save button and Form status can be set to eg. "Draft" / "New"

Sub Querysave(Source As Notesuidocument, Continue As Variant)
Set uidoc = source
Set note= uidoc.document
If note.ActionType(0) <> "SAVE" Then
Messagebox "You must click on the appropriate button to save the document automatically", 0, "Information"
Continue = False
Exit Sub
End If
End Sub

FRee IcoN foR WeBsiTe & DaTabasE

Monday, March 17, 2008

To make your database GUI (Graphic User Interface) more user friendly, icon will be the best way to attract user and easy to understand. This is the best page with latest icon that I always used.

NoTificatiON E-MaiL fRoM WeB

Notification e-mail will be send out once the form has been submitted from web.

Call from WebQuerySave in Form:
@Command([ToolsRunMacro]; "lscrpt_WebSubmit")

Agent: lscrpt_WebSubmit
Trigger : On Event
Agent List Selection
Programming Language : Lotus Script

Sub Initialize

Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim doc_memo As NotesDocument
Dim content As NotesRichTextItem

Set db = session.currentdatabase

' get dbname and path
Dim tmpPath As String
tmpPath = db.filepath
Do While Instr(tmpPath,"\") > 0
tmpPath = Left$(tmpPath, Instr(tmpPath,"\")-1) + "/" + Right$(tmpPath,Len(tmpPath)-Instr(tmpPath,"\"))

' check and see if there are any embedded spaces and replace them with +
Do While Instr(tmpPath," ") > 0
tmpPath = Left$(tmpPath, Instr(tmpPath," ")-1) + "+" + Right$(tmpPath,Len(tmpPath)-Instr(tmpPath," "))

DbName = tmpPath

' end get dbname and path
On Error Goto standarderror
Set doc = session.DocumentContext

doc.datesubmitted = Now

Manager = doc.Manager(0)
TLeader = doc.TLeader(0)

If TLeader = "" Or TLeader = "None" Then
Mail_Sendto = Manager
Mail_Sendto = TLeader
End If

Dim MgrNextApprover ( 0 To 1) As String
MgrNextApprover(0) = Manager
MgrNextApprover(1) = TLeader

doc.ManagementApproval = Fulltrim(MgrNextApprover)
doc.Approver = Mail_Sendto
doc.submitflag = "1"
doc.saveoptions = "1"
docid$ = doc.UniversalID

Manager = doc.Manager(0)

' Notify Manager or Team Leader
On Error Goto Mailerror

Set doc_memo = New NotesDocument (db)
doc_memo.Form = "Memo"
doc_memo.sendto = Mail_sendto

doc_memo.Subject = "Overtime submitted for " & doc.Emp(0)
content1$ = "Overtime for " & Emp & " requires your approval"

Set content = New Notesrichtextitem(doc_memo,"Body")

Call content.AddNewLine ( 1 )
Call content.AppendText ( content1$ )
Call content.AddNewLine ( 2 )
Call content.AppendText ("Please click on the following doclink to pre-approve the request. ")
Call content.AppendDocLink (doc, "")
Call content.AddNewLine ( 2 )
Call content.AppendText ( content2$ )
Call content.AddNewLine ( 2 )
Call content.AppendText ("Thank you.")

Call doc_memo.Send (False)

Goto viewlinks

StandardError: ??

Mailerror: ??


End Sub

AgEnT To Generate TeXT filE (.txt) RePoRt

Call from Button : Generate Report. This report will be used to import data to other system. (eg. Pay roll)
View: Report view
(Form selection Field Status := "Approved")
Trigger from: AgentlistSelection
Target: None
Programming Language: Lotus Script

Sub Initialize
Dim temp1 As String
Dim temp2 As String
Dim temp3 As String
Dim temp4 As String
Dim temp5 As String
Dim temp6 As String

temp1 = "OT 1"
temp2 = "OT 0.25"
temp3 = "OT 0.20"
temp4 = "3R"
temp5 = "2R"
temp6 = "1.5"

Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Dim emplno As String
Dim emplname As String
Dim ot1 As Double
Dim ot2 As Double
Dim ot3 As Double
Dim ot4 As Double
Dim ot5 As Double
Dim ot6 As Double
Dim filestr As String
filestr = "C:\export.txt"
Set outputStream =session.CreateStream
outputStream.Open (filestr)
Dim delim As String
delim = "|"
outputStream.WriteText ("EMPL NUMBER" + delim + "EMPL NAME" + delim + temp1 + delim + temp2 + delim + temp3 + delim + temp4 + delim + temp5 + delim + temp6 +Chr(13)+Chr(10))
Dim view As notesview
Set view = db.GetView("lkSvByEmployee")

Dim doc As notesdocument
Set doc = view.GetFirstDocument

emplname = ""

While Not (doc Is Nothing)
If doc.Status(0) = "Approved" Then
If emplname <> doc.emp(0) Then
emplno = Cstr(doc.emp_num(0))
emplname = doc.emp(0)
Select Case Trim(doc.cat_1(0))
Case temp1 : ot1 = ot1 +doc.TotDay(0)
Case temp2 : ot2 = ot2 +doc.TotDay(0)
Case temp3 : ot3 = ot3 +doc.TotDay(0)
Case temp4 : ot4 = ot4 +doc.TotDay(0)
Case temp5 : ot5 = ot5 +doc.TotDay(0)
Case temp6 : ot6 = ot6 +doc.TotDay(0)
End Select
doc.status = "Processed"
Call doc.Save(0,0)
Select Case Trim(doc.cat_1(0) )
Case temp1 : ot1 = ot1 +doc.TotDay(0)
Case temp2 : ot2 = ot2 +doc.TotDay(0)
Case temp3 : ot3 = ot3 +doc.TotDay(0)
Case temp4 : ot4 = ot4 +doc.TotDay(0)
Case temp5 : ot5 = ot5 +doc.TotDay(0)
Case temp6 : ot6 = ot6 +doc.TotDay(0)
End Select
doc.status = "Processed"
Call doc.Save(0,0)
End If
'outputStream.WriteText (emplno + delim + emplname + delim + Cstr(ot1) + delim + Cstr(ot2) + delim + Cstr(ot3) + delim + Cstr(ot4) + delim + Cstr(ot5) + delim + Cstr(ot6) +Chr(13)+Chr(10))
End If

Set doc = view.GetNextDocument( doc )

If Not (doc Is Nothing) Then
If doc.Status(0) = "Approved" Then
If emplname <> doc.emp(0) Then
outputStream.WriteText (emplno + delim + emplname + delim + Cstr(ot1) + delim + Cstr(ot2) + delim + Cstr(ot3) + delim + Cstr(ot4) + delim + Cstr(ot5) + delim + Cstr(ot6) +Chr(13)+Chr(10))
ot1 = 0
ot2 = 0
ot3 = 0
ot4 = 0
ot5 = 0
ot6 = 0
End If
End If
If (emplno <> "" And emplname <> "" ) Then
outputStream.WriteText (emplno + delim + emplname + delim + Cstr(ot1) + delim + Cstr(ot2) + delim + Cstr(ot3) + delim + Cstr(ot4) + delim + Cstr(ot5) + delim + Cstr(ot6) +Chr(13)+Chr(10))
End If
End If


AgeNt is To gEnEratE CuTomiZe RunnIng nUmbEr

Thursday, March 13, 2008

Usually we use @Unique to generate the document reference number.
Now, this agent used to generate customize running number for the document once the document has been submitted [Call agent from Submit Button of the form]. The running number can be set up from setup form (a).

In this example I used Year and Start Running Number from.

refNum = "PS" + "/"+Cstr(Cint(sldoc.runNumber(0)) + 1) + "/" + sldoc.runYear(0)

The output will be like PS/0001/2008. The running number will + 1 for the next document submitted.

sldoc.runNumber = Cstr(Cint(sldoc.runNumber(0)) + 1)

(a) Running Number Setup Form

(b) Running Number Setup View (1 column Year Sort: Ascending, Type: Standard) (2nd Column RunNumber Sort: None, Type: Standard))

Note: If the setup got Author&Reader access; you need to add composer as Author. Therefore I suggest, not need to introduce Author&Reader's field in setup

Agent Name: RunNumber | agntRunNum
Runtime: Action Menu Selection
Trigger: On Event
Target: All Selected Documents

Target Field : Pick Slip No.
Type: Text/Computed

Sub Initialize

On Error Goto handler

Dim session As NotesSession
Dim AppDb As NotesDatabase
Dim doc As NotesDocument
Dim dc As NotesDocumentCollection
Dim refNum As String

Dim slview, view14 As notesview
Dim sldoc, doc14 As NotesDocument

Set session = New NotesSession
Set AppDb = session.CurrentDatabase
Set currDoc = session.DocumentContext

'//currDoc - current doc
'//ref_code = PsNo
'//view - lsvRunNum

If currDoc.PsNo(0) = "" Or currDoc.PsNo(0) = "-" Then

'// Checking if the doc number not exist

Set slview = AppDb.GetView("lsvRunNum")
Set sldoc = slview.getdocumentbykey(Cstr(Year(Today())),True)

'// sldoc.runNumber(0) - runNumber
'// sldoc.runYear(0) - runYear

If Not sldoc Is Nothing Then

refNum = "PS" + "/"+Cstr(Cint(sldoc.runNumber(0)) + 1) + "/" + sldoc.runYear(0)
sldoc.runNumber = Cstr(Cint(sldoc.runNumber(0)) + 1)
currDoc.PsNo = refNum
Call sldoc.Save(True, True)
Call currDoc.Save(False, True)

End If
End If

Exit Sub

Msgbox "Error in PickSlipRunNumber sub. At line : " & Erl() & ". Error message is : " & Error()
Exit Sub

End Sub

WhY TalentEd PeoPle lEaVe coMpaNies?

Largest studies undertaken by the Gallup Organization.

Why do talented employees leave companies? Come to think of it. This is almost 100% true. Read below & find out the answer.

Early this year, Arun, an old friend who is a senior software designer, got an offer from a prestigious international firm to work in its India operations developing specialized software. He was thrilled by the offer.

He had heard a lot about the CEO of this company, a charismatic man often quoted in the business press for his visionary attitude.

The salary was great. The company had all the right systems in place employee-friendly human resources (HR) policies, a spanking new office, the very best technology, even a canteen that served superb food.

Twice Arun was sent abroad for training. "My learning curve is the sharpest it's ever been," he said soon after he joined. "It's a real high working with such cutting edge technology."

Last week, less than eight months after he joined, Arun walked out of the job. He has no other offer in hand but he said he couldn't take it anymore. Nor, apparently, could several other people in his department who have also quit recently. The CEO is distressed about the high employee turnover.

He's distressed about the money he's spent in training them. He's distressed because he can't figure out what happened. Why did this talented employee leave despite a top salary? Arun quit for the same reason that drives many good people away. The answer lies in one of the largest studies undertaken by the Gallup Organization.

The study surveyed over a million employees and 80,000 managers and was published in a book called First Break All The Rules.

It came up with this surprising finding: If you're losing good people, look to their immediate supervisor. More than any other single reason, he is the reason people stay and thrive in an organization. And he's the reason why they quit, taking their knowledge, experience and contacts with them. Often, straight to the competition.

"People leave managers not companies," write the authors Marcus Buckingham and Curt Coffman. "So much money has been thrown at the challenge of keeping good people - in the form of better pay, better perks and better training - when, in the end, turnover is mostly a manager issue." If you have a turnover problem, look first to your managers. Are they driving people away?

Beyond a point, an employee's primary need has less to do with money, and more to do with how he's treated and how valued he feels. Much of this depends directly on the immediate manager. And yet, bad bosses seem to happen to good people everywhere. A Fortune magazine survey some years ago found that nearly 75 per cent of employees have suffered at the hands of difficult superiors. You can leave one job to find - you guessed it, another wolf in a pin-stripe suit in the next one.

Of all the workplace stressors, a bad boss is possibly the worst, directly impacting the emotional health and productivity of employees.

Here are some all-too common tales from the battlefield:

Dev, an engineer, still shudders as he recalls the almost daily firings his boss subjected him to, usually in front of his subordinates. His boss emasculated him with personal, insulting remarks. In the face of such rage, Dev completely lost the courage to speak up. But when he reached home
depressed, he poured himself a few drinks, and magically, became as abusive ! as the boss himself. Only, it would come out on his wife and children. Not only was his work life in the doldrums, his marriage began cracking up too.

Another employee Rajat recalls the Chinese torture his boss put him through after a minor disagreement. He cut him off completely. He bypassed him in any decision that needed to be taken. "He stopped sending me any papers or files," says Rajat. "It was humiliating sitting at an empty table. I knew nothing and no one told me anything." Unable to bear this corporate Siberia, he finally quit.

HR experts say that of all the abuses, employees find public humiliation the most intolerable. The first time, an employee may not leave, but a thought has been planted. The second time, that thought gets strengthened.

The third time, he starts looking for another job.

When people cannot retort openly in anger, they do so by passive aggression. By digging their heels in and slowing down. By ! doing only what they are told to do and no more. By omitting to give the boss crucial information. Dev says: "If you work for a j erk, you basically want to get him into trouble. You don't have your heart and soul in the job."

Different managers can stress out employees in different ways - by being too controlling, too suspicious, too pushy, too critical, too nit-picky.

But they forget that workers are not fixed assets, they are free agents.

When this goes on too long, an employee will quit -often over seemingly trivial issue. It isn't the 100th blow that knocks a good man down. It's the 99 that went before. And while it's true that people leave jobs for all kinds of reasons - for better opportunities or for circumstantial reasons,
many who leave would have stayed - had it not been for one man constantly telling them, as Arun's boss did: "You are dispensable. I can find dozens like you.

While it seems like there are plenty ! of other fish especially in today's waters, consider for a moment the cost of losing a talented employee.

There's the cost of finding a replacement. The cost of training the replacement. The cost of not having someone to do the job in the meantime.

The loss of clients and contacts the person had with the industry. The loss of morale in co-workers. The loss of trade secrets this person may now share with others.

Plus, of course, the loss of the company's reputation. Every person who leaves a corporation then becomes its ambassador, for better or for worse.

We all know of large IT companies that people would love to join and large television companies few want to go near. In both cases, former employees have left to tell their tales.

"Any company trying to compete must figure out a way to engage the mind of every employee," Jack Welch of GE once said. Much of a company's value lies "between the ears of its employees". If it's! bleeding talent, it's bleeding value. Unfortunately, many senior executives busy traveling the world, signing new deals and developing a vision for the company, have little idea of what may be going on at home.

That deep within an organization that otherwise does all the right things, one man could be driving its best people away.

p/s: I got this article from my colleague forwarded to me via e-mail. It is really interesting!!

Job DoNE..

Latest database that am working on named Overtime that will tentatively launch next Monday 17th March. The objectives of having this database is to allow employee to submit their overtime from Web and Client. To come out with web enabled database using Lotus Domino is quite challenging to me as am used to develop client side database.

The reason why the system requires web enables is to allow our Customer Engineer (CEs) who station at our customer site to submit their Overtime form online. Form submitted will be route to respective team leader and manager for approval. Besides, there is a function for Human Resource (HR) to export their overtime report into a text file (.txt). The text file format is base on our payroll system for easy up loading.

This database is already transferred to production. Testing has been done and now am in the midst of writing system documentation. There are few codes that I would like to share in my next post.. stay tuned.!!

SaLarIeS foR SysteM AnalySt

Click on Picture to Enlarge

“Always bear in mind that your own resolution to succeed is more important than any other one thing.”
~ Abraham Lincoln ~

Latest salaries range for System Analyst.
To be in a market is to be updated.!!

Which level that I belong to..? *smug
What about you..??

LoTuS iN full blOOm

Once again Walt Disney World is the centre of all things yellow as thousands of Lotus devotees descend on the home of the world’s favourite mouse to see what the collaboration software company has in store for the future.

WITH an eye on how the workforce is getting younger and more globalised, IBM used its annual Lotusphere conference in Orlando, Florida to announce the roadmap for its broad range of Lotus collaboration software products and services.

“The workforce is becoming more global and dynamic and the next generation will adopt a style of collaboration that is community-centric,” said IBM Lotus Software general manager Michael Rhodin.

He pointed out the rise of social networking sites, where things are much more out in the open, as an indicator of how the future generation will be accustomed to working.

“We need to unlock the knowledge of people. The first generation of Knowledge Management failed because companies tried to control it instead of letting it grow on its own by setting it free.”

Social software and collaboration tools allow people to optimise themselves, which in turn allows communities to form and knowledge to be shared freely, Rhodin said.

Notes-worthy news

It came as no surprise then that collaboration was the overwhelming theme of the event as well as at the core of most of the new products announced.

First up in a long list of announcements was that the next maintenance release of Lotus Notes and Domino will ship this month and will feature an array of updates that will help users take advantage of the full power of the Web.

For Notes, these updates include a new Web 2.0 feature called My Widgets that allows users to execute actions such as retrieving real-time flight information by clicking on a flight number in an e-mail.

This is made possible through a technology called Live Text, that can identify patterns and phrases and then link them to an appropriate widget.

Users will also be able to drag and drop various kinds of widgets from the Google Gadgets catalogue, content feeds or their own custom programs onto the new widgets panel in the Lotus Notes sidebar.

The Lotus Notes 8.0.1 release will also include Lotus Notes Traveler, which will be able to push e-mail – including attachments, to-do lists, and calendars – to Windows Mobile devices.

Although support will initially be limited to Windows Mobile devices, the architecture can easily be extended to support other smartphone platforms such as Symbian, IBM said.

Another announcement on the Notes front is the plan for IBM and SAP to deliver their first joint software product, codenamed Atlantic, which will integrate Lotus Notes with SAP Business Suite.

The first SAP plug-in under this initiative will support SAP workflows, reporting and analytics and the use of roles from within the Notes client.

Such a link, for example, could be used to process and review travel budget requests and expenses, SAP chief technology officer Vishal Sikka said during his guest appearance at the Lotusphere opening keynote.

The initial release of Atlantic will ship in the fourth quarter and be sold by both companies.

Taking its support for composite applications further, IBM also announced a new commercial mashup maker, Lotus Mashups, a browser-based tool that allows users to easily create mashups without any need for programming.

According to IBM chief architect for Lotus Notes Jeff Eisen, the company plans to have a catalogue supply of widgets to get the eco-system started. Users can then create an environment based on widgets and also put the widgets on a server that others can build on.

Domino falls into place

On the server side, Domino 8.0.1 will offer a database compression feature that IBM said reduces storage requirements by 35%.

In addition, the Domino Web Access (DWA) web mail interface has also been upgraded to look like the interface of Notes 8.0. There will also be an alternative “lite” version to ensure faster access via low bandwidth connections.

IBM also introduced a further slim-lined version of DWA with mail, calendar and contacts functionality for the iPhone.

Looking further forward, IBM announced that the next major version for Notes and Domino will be released later this year. Version 8.5 will have more substantial improvements, especially on the Domino server end of things.

For example, Domino Designer 8.5 will offer Web 2.0-style capabilities such as the ability to create mashups of Notes documents and take advantage of Ajax, style sheets, RSS and Atom feeds.

Domino 8.5 will also offer improved identity management and authentication features and a new data storage system for managing e-mail attachments. IBM said the software will be capable of working with alternative directories and will support Ubuntu and Mac 10.5 operating systems.

To beef up security, IBM took the wraps off a new e-mail security application, called IBM Lotus Protector for Mail Security, which is an antivirus and antispam tool based on the Proventia Network Mail Security System.

A new Symphony

Next up in the rapid-fire series of announcements is that the fourth beta version of IBM’s free desktop productivity suite, Symphony, is ready for download at com/software/lotus/symphony.

Among its new features include support for composite applications that give documents the ability to access and manage business applications such as issuing an invoice directly from a spreadsheet.

Additionally users can download various plug-ins such as the WebSphere Translation Server, which provides real-time translation of content created in Symphony, as well as Sametime Unyte Meeting and Sametime Unyte Share collaboration tools.

IBM also said its Open Collaboration Client Solution (OCCS) will come in a version compatible with the Ubuntu operating system.

The OCCS comprises Lotus Notes; the Lotus Sametime messaging platform; Lotus Symphony; WebSphere Portal; the Lotus Connections social networking software; Lotus Quickr document management and collaboration software for teams; and Lotus Expeditor, an Eclipse-based rich client platform development tool.


hOw do I StArTed

Wednesday, March 12, 2008

I have been working in this company since 1994 right after my graduation where I have been selected to attend Executive Training Program (ETP). 10 fresh graduates from local university such as UM, UiTM, UKM and UIAM has been selected to join this program with basic salary RM 1,800 per month. **Humm..what a good start..!!

The 3 months course covers all topic regarding to Lotus Domino System Admin and then we have an options to either proceed with Lotus Domino Developers or not. I choose to proceed with Lotus Domino Developers as I do really interested to know how this domino can be used to develop a website. I tot it is only HTML, Java and other web programming creatures. **Humm..this is interesting..!!!

Never had a dream to choose programming as my carrier..
In fact, am a good copy-cat during programming lab classes..
**Oo-ooww!!.. Dear my ex-lectures & tutors...please forgive me!!.. *hehe

p/s Maybe this is what we called smart copy-cat.. hiks..!!