Monday, September 27, 2004
Rules for developing software
2. Great software projects always, always have one person who gets the big picture. He/she codes. Repeat: he/she codes. This person is called the architect.
3. Software "architects" that don't code are not software architects. Sorry.
4. If you check in code that breaks the build, shame on you. If you didn't bother to test it before you checked it in, you should be reassigned to writing dot-matrix printer drivers for CP/M for the rest of your natural life.
If on the other hand your checkin broke the build because it conflicted with another checkin, get out of your office and make some new friends among your coworkers. And talk to the architect and get the big picture. If you're really conscientious maybe one day you might be like him/her.
5. In any given source file there should be more comments (as measured by number of ASCII characters, if nothing else) than code. The comments should reflect the fact that the coder knows what he/she is doing and why this code was, in fact, necessary.
Your comments should be comprehensible and grammatically correct. One day you will die, or be transferred to another project, or leave the company, and someone else will take over your code. Think about that.
6. Any coder that puts profanity in his/her code should be forced to write BIOS keyboard interrupt service routines for the rest of his/her natural life, preferably for an eight-bit microprocessor on an S-100 bus.
7. Test/QA is not there to find your bugs. (Read that twice, please.) You are there to find and fix your bugs. (Read that ten times.) Test/QA is responsible for telling manager(s) and customer(s) if your code is any good, and if it's ready to ship.
8. XML does not solve all your problems. Neither does model-driven design, or UML. You still have to write good code. Sorry.
9. Great software architecture requires thought in advance. Sorry.
10. Any coder that doesn't get the importance of user interface design up front should be forced to write IBM System/360 Job Control Language for the rest of his/her natural life.
Any coder working on a client-side app (including web-based apps) that codes without a UI design up front ought to be forced to write programs for OS/2 1.1 for the rest of his/her natural life.
11. Every coder must spend as much time as possible listening to a customer/user complaining bitterly about his/her software and act on the feedback.
12. Julie's Corollary: there is a difference between "programmers" and "engineers." You know who you are.My question-do you?andwhat do you want to become?Are acting to make that happen?
13. Coders with Big Egos usually have Big Problems with their code.
How can you tell a Coder with Big Ego? Easy. They often
a) close their office doors and refuse to talk to anyone who is "unworthy," including marketing, QA, product managers, and their own managers;
b) yell derisively at QA, who have the unmitigated gall to claim their code may have bugs;
c) tell everyone that "no customer would ever do that," when in fact every customer "does that";
d) usually quit either immediately before or immediately after ship, so as not to be accountable.
Pride comes before a fall-the bigger the ego the faster and harder it shatters and hurts you most where you least expect the same.
14. Great coders are not afraid of the words "value proposition." (Converse: good software marketers are not afraid of the words "object model.").A customer/user must actually see value in your work and enable consumers/clients to use the same efficiently.Period.
Become slashdotters (http://slashdot.org) and alterslashers (http://alterslash.org) -and the best coders compete in a no holds barred competition and make do with least-the barest minimum.
15.Learn from failures and improve !
Learning from failure
This is difficult. Writing and publishing encourages me to carefully examine my ideas and helps to clarify them. But looking closely at my own failure hasn't been fun, even if it has been rewarding. Hopefully others can spare themselves the pain by learning from my mistakes.
Back in April, May, and June I had an embarrassingly bad time with the import problem I mentioned. I took three months banging my head against various aspects of the problem. In spite of my post about the importance of knowing when to stop I chased one wrong turn after another for three months. When Rob returned from his vacation he asked Paul to take over who finished it in four days.
Three months vs. four days. That is embarrassing.
It would be easier if I could claim to have solved most of the problem. But Paul's solution little resembled what I had started and addressed aspects of the problem I hadn't even considered. I know Paul is a better programmer. I know he is fast. But I was not prepared for the internal shock and dismay of so glaring a comparison.
With a few months hindsight I can see that I made my most fundamental and most drastic mistake right before I started working on the problem. I assumed it would be easy, but tedious. I underestimated my opponent.
I then failed to notice just how much I was actually struggling. This is especially hard to accept, even in hindsight. How on earth could I go on for weeks, let alone months, without noticing how seriously I had underestimated?
When presented with evidence that conflicts with our beliefs, we dismiss the evidence rather than adjust our beliefs. Getting my butt kicked by an "easy, but tedious" problem is inconsistent with my hot-shot-programmer self-image. I continued to believe the problem was easy and that I was on the verge of the solution, in spite of mounting evidence to the contrary.
The last dimension of failure grew from the same poisoned soil. I couldn't bring myself to ask for help on something "so easy." I didn't want to interrupt Rob and Paul who seemed quite busy on more important matters. I didn't want to admit that this busy-work was kicking my butt. I flailed and struggled and silently suffered along.
As in aikido, getting properly slammed into the mat can really focus your attention. A number of important lessons came hard and fast in July and August.
Sean McGrath's description of the breakthrough syndrome offered some solace, if not a solution:
The syndrome affects all walks of IT professional life but is most acute in software developers. ... The developer "wraps their head" around a problem. ... From that moment of immersion onwards, ideas for solving the problem come thick and fast [and] the developer gets a sense that a triumphant breakthrough is not far away.... That person is likely to feel - really and truthfully - that a breakthrough is just around the corner.It may be, but it probably isn't.
Paul says "there's no busy-work in programming." I haven't heard that anywhere else, and it's still hard to believe. But there's no question that I would have called for help much sooner if I hadn't thought of it as busy-work.
My failure exposed the underlying importance of a collection of extreme programming practices. For starters, my silence violated three of the four XP values, specifically communication, feedback, and courage. Silence is not an effective form of communication. I was cowardly in concealing my failure rather than courageously admitting that Easy and Tedious had beaten me. I broke the feedback loop and we suffered for it.
By contrast, once my failure was out in the open, I was immediately back into the communication and tight feedback loops that are typical for bivio. Rob offered a couple rules of thumb to measure future progress: most tasks should take less than a day and the hard ones should be done in a week. These rules are hidden in continuous integration. In order to integrate continually, you have to break the tasks into day-sized chunks or smaller. Alarms should be going off if you can't integrate your code at the end of the day.
David called for the planning game -- something we hadn't been doing. For this particular problem, the split would have been especially valuable. I had misjudged the problem and taken on a task that was too big for me to properly get my head around. It would have been useful to get help early in slicing the problem into smaller pieces. Also, regularly reporting and adjusting scope and tasks would cause a failure like mine to fail fast. I would only have gone one week before the alarms started going off. If it went as long as two weeks, serious interventions would have been put in place and a months-long failure would have been averted.
I had to get over my hesitation to interrupt. This is about courage and communication. I had two fears holding me back. First, I was afraid of interrupting Rob and Paul. Second I was afraid of looking stupid. Courage is taking action in spite of fear. I need to trust Rob and Paul to manage their own interrupts. The fear of looking stupid is both simple and incredibly difficult. I simply need to get over it. That is substantially harder than it sounds, and also a story for another day.
Update: We only occasionally pair program. Doing that more consistently would obviously prevent a mistake like mine. If we were always pair programming, it would be hard for me to have even developed a fear of interrupting.
Perhaps the most important lesson of this whole experience is about my coworkers at bivio. No one berated me for my failure -- perhaps it was clear that I had that job well in hand. Instead they offered encouragement and stories of their own failures. In some way we bonded through my failure. We looked at the problem as a team and brainstormed various measures to learn from the experience. My mistake became an authentic opportunity to learn and grow, not to judge and condemn. That's not just a slogan on a motivational poster, but what really happened in action
16.Do not give broken links-nothing irritates more if you are not able to substantiate your claims in front of whomever you want to impress!.IBM's latest may make broken links a thing of the past.
(GOAL Create a system that can convert the anarchy of online data„Web pages, e-mail, chat rooms, and more„into a format that can be analyzed to identify commercially valuable information
WHY IT'S A WINNER By leveraging the vast reserves of untapped information online, WebFountain will let companies make smarter business decisions while creating an open platform that will encourage more machine understanding research to leave the laboratory.).
Wednesday, September 22, 2004
Friday, September 17, 2004
2 tech companies I find very interesting
I would love to here some feedback-it will spur me on and no negative stuff please UNLESS you tell me how top correct the same or else you are indeed wasting time.
The 2 startups I like currently are:
http://www.telecontinuity.com - provides real emergency communication - has an innovative shoelace type of a repair system for communication systems.
http://www.transitive.com - eases the application migration of software between different conventional computer families, it has potential in the design of application-centered CPUs, in dynamic re-optimization of performance-critical software at run-time, and as a component in computer systems deeply embedded in consumer electronics – from cell phones and PDA's through digital entertainment centers and games consoles
Friday, September 03, 2004
more interesting websites and articles for Software engineers
http://stommel.tamu.edu/~baum/programming.html
Good Site for Software Engineers http://software-engineer.org/
No.
Title/Author
URL
10 minute guide to lotus notes mail 4.5
http://www.parsian.net/set1252/pages/books.htm
10 minute guide to Microsoft exchange 5.0
http://www.parsian.net/set1252/pages/books.htm
10 minute guide to outlook 97
http://www.parsian.net/set1252/pages/books.htm
10 minute guide to schedule+ for windows 95
http://www.parsian.net/set1252/pages/books.htm
ActiveX programming unleashed
http://www.parsian.net/set1252/pages/books.htm
ActiveX programming unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Advanced perl programming
http://www.hk8.org/old_web/
Advanced PL/SQL programming with packages
http://www.hk8.org/old_web/
Adventure in Prolog/AMZI
www.oopweb.com
Algorithms CMSC251/Mount, David
www.oopweb.com
Alison Balter's Mastering Access 95 development, premier ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Apache : The definitive guide, 3rd.ed.
http://www.hk8.org/old_web/
Beej's guide to network programming/Hall, Brain
www.oopweb.com
Beyond Linux from Scratch/BLFS Development Team
http://book.onairweb.net/computer/os/linux/Administration/Beyond_Linux_From_Scratch/
Borland C++ builder unleashed
http://www.parsian.net/set1252/pages/books.htm
Building an intranet with windows NT 4
http://www.parsian.net/set1252/pages/books.htm
Building an Intranet with Windows NT 4
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Building expert systems in prolog/AMZI
www.oopweb.com
C programming language
http://book.onairweb.net/computer/pl/C/The_C_Programming_Language_by_K&R/
C Programming/Holmes, Steven
www.oopweb.com
C++ Annotations
www.oopweb.com
CGI developer's guide
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
CGI manual of style
http://www.parsian.net/set1252/pages/books.htm
CGI manual of style online
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
CGI programming
http://www.hk8.org/old_web/
CGI programming unleashed
http://www.parsian.net/set1252/pages/books.htm
CGI programming with Perl, 2nd.ed.
http://www.hk8.org/old_web/
Charlie Calvert's Borland C++ builder unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Client/server computing, 2nd.ed.
http://www.parsian.net/set1252/pages/books.htm
Client-server computing, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Common LISP, the language/Steele, Guy
www.oopweb.com
Compilers and compiler generators : an introduction with C++/Terry, P.D.
www.oopweb.com
Complete idiot's guide to creating HTML webpage
http://www.parsian.net/set1252/pages/books.htm
Computer graphics CMSC 427/Mount, David
www.oopweb.com
Configuring and troubleshooting the windows NT/95 registry
http://www.parsian.net/set1252/pages/books.htm
Creating commercial websites
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Creating web applets with Java
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Crystal Reports.NET
http://www.crystalreportsbook.com/Chapters.asp
Curious about the internet
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Curious about the internet?
http://www.parsian.net/set1252/pages/books.htm
Dan appleman's developing activeX components with Visual Basic 5
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Dan appleman's developing activex components with Visual Basic 5.0
http://www.parsian.net/set1252/pages/books.htm
Data structures CMSC420/Mount, David
www.oopweb.com
Database developer's guide with visual basic 4, 2nd.ed.
http://www.parsian.net/set1252/pages/books.htm
Database developer's guide with Visual Basic 4, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Database developer's guide with Visual C++ 4, 2nd.ed.
http://www.parsian.net/set1252/pages/books.htm
Database developer's guide with Visual C++ 4, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Design and analysis of computer algorithms CMSC451/Mount, David
www.oopweb.com
Designing implementing Microsoft internet information server
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Designing implementing Microsoft proxy server
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Developing for netscape one
http://www.parsian.net/set1252/pages/books.htm
Developing intranet applications with java
http://www.parsian.net/set1252/pages/books.htm
Developing personal oracle 7 for windows 95 applications
http://www.parsian.net/set1252/pages/books.htm
Developing personal Oracle 7 for windows 95 applications
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Developing professional java applets
http://www.parsian.net/set1252/pages/books.htm
Developing professional java applets
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
DNS and BIND
http://www.hk8.org/old_web/
Doing objects with VB.NET and C#
http://vbwire.com/nl?6814
EAI/BPM Evaluation Series: IBM WebSphere MQ Workflow v3.3.2 & EAI Suite by > Middleware Technology Evaluation Series, Phong Tran & Jeffrey Gosper
http://www.cmis.csiro.au/mte/reports/BPM_IBMwebsphereMQ332.htm
Effective AWK programming
http://book.onairweb.net/computer/os/shell/Effective_AWK_Programming/
Enterprise javabeans, 2nd.ed.
http://www.hk8.org/old_web/
Exploring java
http://www.hk8.org/old_web/
GNOME/Sheets, John
www.oopweb.com
Graph theory/Prof. Even
www.oopweb.com
Hacking java
http://www.parsian.net/set1252/pages/books.htm
How intranets work
http://www.parsian.net/set1252/pages/books.htm
How intranets work
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
How to program visual basic 5.0
http://www.parsian.net/set1252/pages/books.htm
How to use HTML 3.2
http://www.parsian.net/set1252/pages/books.htm
Html : The definitive guide
http://www.hk8.org/old_web/
HTML 3.2 & CGI unleashed
http://www.parsian.net/set1252/pages/books.htm
HTML 3.2 and CGI professional reference edition unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
HTML by example
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Internet firewall
http://www.hk8.org/old_web/
Intranets unleashed
http://www.parsian.net/set1252/pages/books.htm
Introduction to object-oriented programming using C++/Muller, Peter
www.oopweb.com
Introduction to programming using Java/Eck, David
www.oopweb.com
Introduction to socket programming
http://book.onairweb.net/computer/network/An_Introduction_to_Socket_Programming/
Java 1.1 unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java 1.1 unleashed, 2nd.ed.
http://www.parsian.net/set1252/pages/books.htm
Java 1.1 unleashed, 3rd.ed.
http://www.parsian.net/set1252/pages/books.htm
Java 114 documentation
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java AWT reference
http://www.hk8.org/old_web/
Java by example
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java developer's guide
http://www.parsian.net/set1252/pages/books.htm
Java developer's guide
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java developer's reference
http://www.parsian.net/set1252/pages/books.htm
Java developer's reference
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java Distributed computing
http://www.hk8.org/old_web/
Java enterprise
http://www.hk8.org/old_web/
Java enterprise in a nutshell
http://www.hk8.org/old_web/
Java foundation classes in a nutshell
http://www.hk8.org/old_web/
Java fundamental classes reference
http://www.hk8.org/old_web/
Java in a nutshell
http://www.hk8.org/old_web/
Java in a nutshell, 3rd.ed.
http://www.hk8.org/old_web/
Java language reference
http://www.hk8.org/old_web/
Java security
http://www.hk8.org/old_web/
Java servlet programming
http://www.hk8.org/old_web/
Java unleashed
http://www.parsian.net/set1252/pages/books.htm
Java unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Java, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
JavaScript : the definitive guide
http://www.hk8.org/old_web/
Javascript manual of style
http://www.parsian.net/set1252/pages/books.htm
Javascript manual of style http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Josh's GNU Linux Guide/Joshua
http://book.onairweb.net/computer/os/linux/Administration/Josh's_GNU_Linux_Guide/
Late night activex
http://www.parsian.net/set1252/pages/books.htm
Late night activeX
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Laura lemay's 3D graphics in and VRML 2
http://www.parsian.net/set1252/pages/books.htm
Laura lemay's activex and VBScript
http://www.parsian.net/set1252/pages/books.htm
Laura lemay's graphics and web page design
http://www.parsian.net/set1252/pages/books.htm
Laura lemay's guide to sizzling websites design
http://www.parsian.net/set1252/pages/books.htm
Laura lemay's javascript 1.1
http://www.parsian.net/set1252/pages/books.htm
Laura lemay's web workshop activex and_VBScript
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Laura lemay's web workshop Graphics web page design
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Laura lemay's web workshop javascript
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Learning perl
http://www.hk8.org/old_web/
Learning perl on win32
http://www.hk8.org/old_web/
Learning the kornshell
http://www.hk8.org/old_web/
Learning unix
http://www.hk8.org/old_web/
Learning vi
http://www.hk8.org/old_web/
Linux from Scratch/Beekmans, Gerard
http://book.onairweb.net/computer/os/linux/Administration/Linux_From_Scratch/
Linux in a nutshell, 3rd.ed.
http://www.hk8.org/old_web/
Linux kernel/Rusling, David
www.oopweb.com
Linux network administrator's guide/Dawson, Terry
www.oopweb.com
Linux system administrator's survival guide
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
MAPI, SAPI and TAPI developer's guide
http://www.parsian.net/set1252/pages/books.htm
Mastering access 95 development
http://www.parsian.net/set1252/pages/books.htm
Microsoft access 97 quick reference
http://www.parsian.net/set1252/pages/books.htm
Microsoft access 97 quick reference
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Microsoft backoffice 2 unleashed
http://www.parsian.net/set1252/pages/books.htm
Microsoft excel 97 quick reference
http://www.parsian.net/set1252/pages/books.htm
Microsoft excel 97 quick reference
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Microsoft exchange server survival guide
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Microsoft frontpage unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Microsoft word 97 quick reference
http://www.parsian.net/set1252/pages/books.htm
Microsoft word 97 quick reference
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Microsoft works 4.5 6-In-1
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
More than 100 full-text e-books
http://www.allfreetech.com/EBookCategory.asp
Ms backoffice administrator's survival guide
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Ms backoffice unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Mysql and msql
http://www.hk8.org/old_web/
Netscape plug-ins developer's kit
http://www.parsian.net/set1252/pages/books.htm
Official gamelan java directory
http://www.parsian.net/set1252/pages/books.htm
Oracle built-in packages
http://www.hk8.org/old_web/
Oracle PL/SQL built-in pocket reference
http://www.hk8.org/old_web/
Oracle PL/SQL language pocket reference
http://www.hk8.org/old_web/
Oracle PL/SQL programming guide to Oracle 8 features
http://www.hk8.org/old_web/
Oracle PL/SQL programming, 2nd.ed.
http://www.hk8.org/old_web/
Oracle unleashed
http://www.parsian.net/set1252/pages/books.htm
Oracle unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Oracle web applications PL/SQL developer's introduction
http://www.hk8.org/old_web/
Patterns of enterprise application architecture/Fowler, Martin
http://www.awprofessional.com/catalog/product.asp?product_id={574D77DF-6ED2-BC5-A6A8-02E59CA7482D}
PC week : the intranet advantage
http://www.parsian.net/set1252/pages/books.htm
Perl 5 by example
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Perl 5 quick reference
http://www.parsian.net/set1252/pages/books.htm
Perl 5 unleashed
http://www.parsian.net/set1252/pages/books.htm
Perl 5.0 CGI web pages
http://www.parsian.net/set1252/pages/books.htm
Perl cookbook
http://www.hk8.org/old_web/
Perl for system administration
http://www.hk8.org/old_web/
Perl in a nutshell
http://www.hk8.org/old_web/
Perl quick reference
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Peter norton's complete guide to windows NT 4 workstations
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Presenting activex
http://www.parsian.net/set1252/pages/books.htm
Presenting activex
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Presenting javabeans
http://www.parsian.net/set1252/pages/books.htm
Presenting javabeans
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Programming perl
http://www.hk8.org/old_web/
Programming perl, 3rd.ed.
http://www.hk8.org/old_web/
Programming the Perl DBI
http://www.hk8.org/old_web/
Red hat linux unleashed
http://www.parsian.net/set1252/pages/books.htm
Running a perfect intranet
http://www.parsian.net/set1252/pages/books.htm
Running Linux, 3rd.ed.
http://www.hk8.org/old_web
Sams teach yourself java 1.1 in 24 hours/
http://book.onairweb.net/computer/sams/Sams_Teach_Yourself_Java_1.1_Programming_in_24_Hours
Sams Teach yourself java in 21 days/Lemay, Laura
http://book.onairweb.net/computer/sams/Sams_Teach_Yourself_Java_in_21_Days/
Sams teach yourself linux in 24 hours/Ball, Bill
http://book.onairweb.net/computer/sams/Sams_Teach_Yourself_Linux_in_24%20Hours/
Sams teach yourself shell programming in 24 hours
http://book.onairweb.net/computer/sams/Sams_Teach_Yourself_Shell_Programming_in_24_Hours/
Sams teach yourself TCP/IP in 14 days
http://book.onairweb.net/computer/sams/Sams_Teach_Yourself_TCP-IP_in_14_Days(SE)/
Sed and awk
http://www.hk8.org/old_web/
Sendmail
http://www.hk8.org/old_web/
Sendmail desktop reference
http://www.hk8.org/old_web/
Slackware linux unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using java, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using _javascript
http://www.parsian.net/set1252/pages/books.htm
Special edition using javascript
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using Jscript
http://www.parsian.net/set1252/pages/books.htm
Special edition using lotus notes and domino 4.5
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using Microsoft SQL server 6.5, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using Microsoft visual Interdev
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using perl 5 for web programming
http://www.parsian.net/set1252/pages/books.htm
Special edition using perl for web programming
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Special edition using Visual Basic 4
http://www.parsian.net/set1252/pages/books.htm
TCP/IP
http://www.hk8.org/old_web/
Teach yourself activex programming in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself C++ in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself C++ in 21 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself CGI programming with Perl 5 in a week
http://www.parsian.net/set1252/pages/books.htm
Teach yourself database programming with VB5 in 21 days, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself database programming with visual basic 5 in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself HTML 3.2 in 24 hours
http://www.parsian.net/set1252/pages/books.htm
Teach yourself HTML 3.2 in 24 hours
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself internet game programming with java in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself java 1.1 programming in 24 hours
http://www.parsian.net/set1252/pages/books.htm
Teach yourself jave in café in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself Microsoft visual Interdev in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself Microsoft visual Interdev in 21 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself oracle 8 in 21 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself perl 5 in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself perl 5 in 21 days, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself SQL in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself SQL in 21 days, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself TCP/IP in 14 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself TCP/IP in 14 days, 2nd.ed.
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself the Internet in 24 hours
http://www.parsian.net/set1252/pages/books.htm
Teach yourself the internet in 24 hours
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself VBScript in 21 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself VBScript in 21 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself visual basic 5 in 24 hours
http://www.parsian.net/set1252/pages/books.htm
Teach yourself Visual Basic 5 in 24 hours
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself Visual J++ in 21 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Teach yourself web publishing with HTML 3.2 in 14 days
http://www.parsian.net/set1252/pages/books.htm
Teach yourself web publishing with HTML in 14 days
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Thinking in C++
http://www.mindview.net/Books
Thinking in C++/Eckel, Bruce - Vol.I, 2nd.ed.
www.oopweb.com
Thinking in C++/Eckel, Bruce - Vol.II, 2nd.ed.
www.oopweb.com
Thinking in Enterprise Java
http://www.mindview.net/Books
Thinking in Java, 2nd.ed.
www.oopweb.com
Thinking in Java, 3rd.ed. (pdf)
http://www.mindview.net/Books
Tricks of the internet gurus
http://www.parsian.net/set1252/pages/books.htm
Tricks of the java programming gurus
http://www.parsian.net/set1252/pages/books.htm
Unix and internet security
http://www.hk8.org/old_web/
Unix hints and hacks/Waingrow, Kirk
http://book.onairweb.net/computer/os/unix/Administration/UNIX_Hints_&_Hacks/19270001.htm
Unix in a nutshell
http://www.hk8.org/old_web/
Unix kornshell quick reference
http://book.onairweb.net/computer/os/shell/Unix_KornShell_Quick_Reference/kornShell.html
Unix power tools
http://www.hk8.org/old_web/
Unix shell guide
http://book.onairweb.net/computer/os/shell/The_UNIX_Shell_Guide/
Unix unleashed
http://www.parsian.net/set1252/pages/books.htm
Unix unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Unix unleashed Internet Ed./Burk, Robin
http://book.onairweb.net/computer/os/unix/Administration/UNIX_Unleashed(Internet_Edition)/fm.htm
Unix unleashed, System administrator's Edition
http://book.onairweb.net/computer/os/unix/Administration/UNIX_Unleashed_System_Administrator's_Edition/toc.htm
Unix Unleashed/Sams Publication
http://book.onairweb.net/computer/os/unix/Administration/UNIX_Unleashed/
Upgrading PCs illustrated
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Using windows NT workstation 4.0
http://www.parsian.net/set1252/pages/books.htm
VBScript unleashed
http://www.parsian.net/set1252/pages/books.htm
Vbscript unleashed
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Visual basic 4 in 12 easy lessons
http://www.parsian.net/set1252/pages/books.htm
Visual basic 4 unleashed
http://www.parsian.net/set1252/pages/books.htm
Visual Basic 5 night school
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Visual basic programming in 12 easy lessons
http://www.parsian.net/set1252/pages/books.htm
Visual Basic programming in 12 easy lessons
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Visual C++ 4 unleashed
http://www.parsian.net/set1252/pages/books.htm
Visual C++ programming in 12 easy lessons
http://www.parsian.net/set1252/pages/books.htm
Web database developer's guide with visual basic 5
http://www.parsian.net/set1252/pages/books.htm
Web database developer's guide with visual basic 5
http://www.emu.edu.tr/english/facilitiesservices/computercenter/bookslib/
Web programming desktop reference 6-in-1 http://www.parsian.net/set1252/pages/books.htm
Sunday, August 29, 2004
Open Source communications
Your Source for Open Source CommunicationWelcome to Vovida.org - a communications community site dedicated to providing a forum for open source software used in datacom and telecom environments. While we have predominantly included software to date that we have created, we are looking forward to adding more software from all of you as it is submitted to us for inclusion.
http://www.vovida.org
Synergy-It is not what you think
Yeah I have found a tool to do exactly the same.Read about the same below here.Sure will simplify life for a lot of people!.
synergy: [noun] a mutually advantageous conjunction of distinct elements
Synergy lets you easily share a single mouse and keyboard between multiple computers with different operating systems, each with its own display, without special hardware. It's intended for users with multiple computers on their desk since each system uses its own monitor(s).
Redirecting the mouse and keyboard is as simple as moving the mouse off the edge of your screen. Synergy also merges the clipboards of all the systems into one, allowing cut-and-paste between systems.
http://synergy2.sourceforge.net
Synergy does exist.
Friday, August 27, 2004
Oracle troubleshooting
You too can troubleshoot Oracle.
This link below is an answer to many a prayer.
http://www.cryer.co.uk/brian/oracle/oracletrouble.htm
Thursday, August 26, 2004
Wednesday, August 25, 2004
CoolMon
What is CoolMon?
CoolMon is a program for monitoring vital system stats and almost anything else you wish to display on the desktop. It can also display stats from remote pc's and publish real-time stats on a webpage. The application can display CPU, RAM and page file usage, hard drive usage, MotherBoard Monitor temperatures and fan speeds, various network stats and much, much more. For a full list of CoolMons abilities, see the features page. To view some of the different ways you can make CoolMon display the data, please see the screenshots page.
CoolMon is a freeware utility written by the CoolMon crew, who are members of the Ars Technica OpenForum community. CoolMon was one of many software projects which are written and distributed freely by members of the Ars community. The projects have become known as Arsware, check out the website for more cool stuff. More recently, CoolMon has broken away from Arsware a bit. It now has its own hosting facilities, and may, in the future, cease to be officially affiliated with Arsware. Of course, our software will continue to be open-source and freely distributed.
CoolMon is released under the BSD license, please see the license page, under the downloads section for more information, about this
Computing in Indian Lanuages
Computing in Indian Languages (Localization of GNU/Linux and Applications in Indian Languages).
Yes the link is below for reference and I hope many people take advantage of the same.
http://www.indictrans.org/
Tuesday, August 17, 2004
open source links
LinuxWorld.com links
LinuxWorld.com
homeBest of LinuxWorld.com
The Legacy Files
The Penguin Brief
Version Control
Linux links
Linuxforums
Apache
Freshmeat
GNOME
KDE
LinEvents
Linux.com
LinuxDevices
Linux International
Linux Journal
Linux Kernel Archives
LinuxNews.com
Linux Online
LinuxPPC.org
LinuxSecurity
Linux Today
Linux Weekly News
LinTraining
Slashdot
SourceForge
Themes.org
ADVOCACY
Linux International
http://www.li.org/ LI is a nonprofit association of groups, corporations, and others that promotes and helps direct the growth of the Linux OS and the Linux community.
DEVELOPMENT
developerWorks
http://www.ibm.com/developerIBM -run developer site's Linux Zone has articles, news, and descriptions/links to development tools. The Open Source Zone hosts projects licensed under the IBM Public License.
SourceForge
http://www.sourceforge.netA centralized location for software developers to control and manage open source software development. SourceForge hosts over 6,000 projects and has over 42,000 registered users.
DOCUMENTATION
Linux Documentation Project
http://www.linuxdoc.org/index.html The LDP is a collaborative effort to provide Linux documentation, ranging from online docs to printed manuals, relating to installing, using, and running Linux.
Linux man Pages
http://www.ctyme.com/linuxdoc.htmAn indexed HTML version of the Linux man pages -- niftily compiled by a Linux wannabe and "DOS dummy who would rather go back to CP/M."
EVENTS
LinEvents
http://linevents.com/Authoritative listing of all upcoming Linux-related events -- collected, categorized, summarized, and presented with an efficient interface.
GAMES
Linux Games
http://www.linuxgames.com/Latest and greatest news, HOWTOs, hosted game sites, advocacy information, and links for games-on-Linux aficionados. Includes a pretty active discussion forum and an FTP download site.
Linux Game Tome
http://happypenguin.org/A dynamic, user-maintained database of games for Linux. Started by Tessa Lau in 1995 and resuscitated and overhauled in 1998 by Bob Zimbinksi.
GENERAL LINUX
Tucows Linux
http://news.tucows.com/ext2/Linux Webzine with original reviews, opinion, technical articles at various levels, software downloads, and an extensive library of HOWTOs.
FirstLinux
http://www.firstlinux.com/Home of the Linux Guide, a searchable and alphabetically arranged compendium of Linux terms, definitions, and documentation. Also includes capsule reviews, resources for beginners, and an exhaustive set of Web links.
LinuxPlanet
http://www.linuxplanet.comMixed bag of features, reviews, opinion, discussion, and tutorials. Best known for editor Kevin Reichard's reviews and editorials.
Just Linux
http://www.justlinux.com/A Linux portal with some free services too: dynamic DNS, email forwarding, and the Linux Registry (a searchable database of Linux professionals, hobbyists, and jobs/projects).
Linux.com
http://www.linux.com/Linux.com offers original features and columns, news, and support resources aimed at users of all experience levels.
Linux Gazette
http://www.linuxgazette.com/Monthly Web publication with an informal style. Linux Gazette is dedicated both to making Linux just a little more fun and to sharing ideas and discoveries.
Linux Journal
http://www.linuxjournal.comThis companion site to the venerable monthly print magazine has selected material from the current issue plus a number of online-only feature articles. Other features include a speakers bureau.
The Linux Show!!
http://www.thelinuxshow.com/Weekly Webcast (Tuesdays at 6 p.m. Pacific) with discussion of recent Linux news and sometimes controversial topics, often including special guests from the Linux community. Part of the GeekCast Network.
Linux Online
http://www.linux.org/A nonprofit operation that includes contributions from thousands in the Linux community. Aims to provide a clearinghouse for information about, and to further the promotion of, Linux.
32BitsOnline
http://32bitsonline.com/32BitsOnline has timely editorials, technical articles, hardware and software reviews, news, polls, and other features geared toward IT professionals in the Linux and BeOS worlds.
Linux Magazine
http://www.linux-mag.com/The "chronicle of the revolution" has been going to subscribers and newsstands since the spring of 1999. Complete issues go online a few months after they come out in print. Site also includes some online-only content.
LinuxNews.com
http://www.linuxnews.comThis news site, spun off from LinuxMall.com, distinguishes itself by mixing a healthy dose of original content with links to Linux news from across the Web.
HUMOR
Segfault.org
http://segfault.org/Go here when it all gets too serious. Where else can you find satire like "NT Outperforms Self on Same Hardware" and "USA Replaces Constitution with Linux Kernel?"
Humorix
http://i-want-a-website.com/about- linux/Fake news that pokes fun at Linux and other tech stuff. "Fake news is to Humorix as unconfirmed rumors are to Slashdot."
KERNEL
Linux Kernel Archives
http://www.kernel.org/Official site for the Linux kernel source. A number of sites around the world have provided mirrors, which you can access from here.
NEWBIES
Eclectic Compendium for Linux Newbies
http://www.xmission.com/~howardm /A well-organized individual's site, with basic technical information, hints, tips, examples, and Web links for those getting started with Linux. Includes an Online Troubleshooting Resources page.
LinuxNewbie
http://www.linuxnewbie.orgThis site takes people by the hand who are having a hard time learning how to operate, install, and get around the OS.
NEWS
comp.os.linux.announce archive
http ://www.cs.helsinki.fi/u/mjrauhal/linux/cola.archive/cola-last-50.htmlc.o.l.a. is a moderated Usenet newsgroup intended as a forum for announcements for the Linux community. This page has links to the latest 50 messages, newest ones first.
Linux Weekly News
http://lwn.netWeekly summary of Linux news for all interests. Also has editorials, features, an event calendar, and a Linux stocks page. Includes daily updates page.
Linux Today
http://linuxtoday.comThe most all-encompassing Linux and open source news site on the Web, updated continuously.
Slashdot.org
http://slashdot.org/This hippest of geek sites has reader-contributed daily news and reviews for those who gravitate toward open source but also have a far-ranging set of other techie interests.
OPEN SOURCE
Apache Software Foundation
http://www.apache.org/The Apache Software Foundation supports Apache open source software-development projects, including the world-dominant Apache Web server software.
FreeBSD
http://www.freebsd.org/FreeBSD is a robust BSD Unix operating system with advanced networking, performance, security, and compatibility features for "PC-compatible" computers. FreeBSD is free and developed and maintained by a large team of individuals.
OpenBSD
http://openbsd.org/OpenBSD is a free, volunteer-developed, multiplatform 4.4BSD-based UNIX-like operating system emphasizing portability, standardization, correctness, proactive security, and integrated cryptography. Supports binary emulation of Linux.
NetBSD
http://www.netbsd.org/NetBSD is a free, highly portable UNIX-like operating system available for many platforms, from 64-bit AlphaServers to handheld devices.
GNOME
http://www.gnome.org/The GNOME project, part of the GNU Project, intends to build an easy-to-use desktop environment for users and a powerful application framework for software developers.
The GNU Project
http://www.gnu.org/GNU (GNU's not Unix) is the venerable and productive endeavor, founded by Richard Stallman, to provide a freely distributable replacement for Unix.
KDE
http://www.kde.org/KDE seeks to fill the need for easy-to-use desktop for Unix and Linux workstations. The software created by the KDE project is open source and cost-free.
OpenSource.org
http://www.opensource.org/Resource site for the Open Source Initiative, an organization that advances the cause of "free software" on the pragmatic grounds of reliability, cost, and strategic business risk.
SECURITY
SecurityPortal
http://securityportal.com/linuxto pnews.htmlInformation for corporate security professionals includes tech notes and opinion pieces, summaries of breaking security news, feature articles, and links to security-related resources.
LinuxSecurity
http://www.linuxsecurity.com/Source of information, insight, and news relating to Linux and open source security issues.
SPECIAL- INTEREST TECHNICAL LINUX SITES
LinuxPPC
http://www.linuxppc.org/This is the official home of the Linux/PPC project, the native port of Linux to the PowerPC processor. It's primarily, but not exclusively, developer-oriented.
Linux Telephony
http://www.linuxtelephony.org/A site that's "bridging the Linux and telephony paths"; offers relevant news articles, technical discussion, projects, software, reviews, and other resources.
LinuxDevices.com
http://www.linuxdevices.com/News, articles, polls, forum, event and job listings, products, and links -- all exclusively focused on using Linux in embedded applications.
Realtimelinux.org
http://www.realtimelinux.org/An impartial, technically oriented, noncommercially aligned community resource for people interested in Linux as a realtime OS, focusing on the "hard realtime" Linux kernels and applications.
SOFTWARE REPOSITORIES
Freshmeat
http://www.freshmeat.net/Repository of free applications for almost any Linux purpose. Dozens of new packages are posted daily from the hundreds contributed. There's also an editorial section.
IceWalkers
http://www.icewalk.com/A site where Linux software authors can announce their latest releases and make them available for download. Includes a system for users to rate applications.
LinuxApps.com
http://www.linuxapps.com/Downloads of new applications for Linux from contributing developers. Several are posted each day; all are indexed in a separate frame by date and by category.
AppWatch.com
http://www.appwatch.com/A repository for free and open source Linux applications only. AppWatch not only announces new versions, but also maintains a database of changes and up-to-date links to all releases of each application it lists.
STANDARDS
Linux Standard Base
http://www.linuxbase.org/The goal of the Linux Standard Base is to develop and promote a set of standards that will increase compatibility among Linux distributions and enable software applications to run on any compliant Linux system.
X WINDOW SYSTEM
Themes.orghttp://www.themes.org/A repository, hosted by VA Linux Systems, of graphics, information, themes, and other resources for the X Window System
Monday, August 16, 2004
Linux Step by Step
This site specializes in providing notebook style, first person accounts of installing software and hardware on a Linux system.
http://www.linux-sxs.org
Venture Capital and other related issues
Security websites-the kind you need
A collection of interesting websites that I found.I hope people benefit from using these websites.
http://www.ciberpol.com
Information Systems Security
http://www.infosyssec.com
Security Portal
http://www.packetstormsecurity.org/
Security Tools Resource
http://www.robertgraham.com
Sniffing FAQ (offline)
http://www.blackcode.com
Security Services Provider
http://www.ntsecurity.net
Security Administrator Magazine
http://www.securiteam.com
Computer Security News And Utilities
http://www.cryptome.org
General Security Information
http://www.eeye.com
Digital Security Software
http://www.foundstone.com
Commercial Hacking Courses
http://www.cirt.net
Security Information
http://www.atstake.com
Security News (formally L0pht)
http://www.net-security.org
Help Net Security
http://www.counterpane.com
Monthly Security Newsletter
http://www.honeynet.org
Security Research Project
http://www.all.net
Fred Cohen & Associates
http://www.winguides.com
Windows Security Guide
http://www.iss.net
Known Ports List
http://www.infowar.com
Infowar News Site
http://scan.sygatetech.com
Sygatetech - Port Scan
http://grc.com
GRC - Port Scan
http://www.malware.com
Malicious Software Security
http://www.eyeonsecurity.net
Eye On Security News
http://www.k-otik.com
K-OTik Security News
http://www.securitydocs.com
Security Docs Directory of White Papers
Sunday, August 15, 2004
Interesting Jobs - they look cool
Brief descriptions of the jobs are given below:
1)The Site Manager is responsible for managing the visual merchandising presentation within his/her department to best respond to customer demand and convert visits into sales. This person will work closely with merchants to get visibility into seasonal campaigns and key item/category drivers in order to merchandise modules within each department.
2)Support role to the VP and Directors of e-Commerce. (Team manages relationships with wireless carriers that support ringtones
3)A company seeks a dynamic, results-oriented, detail-driven Associate Product Manager with a passion for all things Entertainment, to join its team in launching and managing exciting new and existing products in the Entertainment, Movies and TV space. This position will be a hybrid of a content producer role with areas of responsibility extending into product management.
4)The VP Marketing is responsible for all Marketing/Marcomm activities at ****Networks including brand, website, community marketing, partner marketing, ESD sales, public relations, corporate communications, sales support, collateral, events, advertising, and retail programs.
Email me for more information.I want a small commission if you get the job.It has to be given voluntarily and it should be whatever you the websurfer wants to give willingly.
My email address is:
ahmedparvez (at) yahoo.com
truly great computer networking lnks
http://www.netconfigs.com
http://www.protocols.com
http://www.traceloop.com
http://noc.tele.dk
http://www.secsup.org/Tracking
http://www.nanog.org
http://www.cisco.com
http://www.juniper.net
http://www.crystalpc.com
invented by mistake!
The chip is one of them if I am not mistaken (both the computer chip and the potato chip).The potato chip was invented when a cook was mad at his captain and sliced potatoes after peeling them and fried them and served the same to the captain after adding salt and the computer chip was an accident and the result is the admirable giant called Intel Inc.
For more information of other products invented by accidents we need not look further than 3 M- a truly innovative company.The links to other companies and famous products is below:
http://www.minbu.connectfree.co.uk/invent.htm
Coke,rubber and the pacemakers are other useful articles that come to mind.Another innovative company that comes to my mind is http://www.ideo.com
Make mistakes,have fun and save lives,time,money and make the impact and help people without wanting anything back.
The Zigbee Alliance
Some of the best brands in the world today are associated with this alliance.Electronics recyclers also should join this alliance in my humble opinion.
http://www.zigbee.org
For links to electronics recyclers
www.epa.gov will be helpful.
Friday, August 13, 2004
BMW parts in UK
No more time wasting the link is:
http://www.motormec.co.uk/default.htm
Thursday, August 12, 2004
The CRA and Microsoft
Really sweet of Microsoft to have sponsored the event and the CRA too for taking the initiative and actually presenting great role models to young and old alike.Certainly deserves more exposure and I am doing my bit too by writing about it in my blog.
The relevant links are:
www.microsoft.com
http://cra.org
http://www.usnews.com/usnews/issue/040816/biztech/16eegeeks.htm
US news too deserves a pat for doing great work in making the story more popular.