Help getting experience

George Toft plug-discuss@lists.plug.phoenix.az.us
Thu, 20 Jun 2002 22:20:21 -0400


9.  How to use properties files, and secure them from prying eyes.
10.  How to avoid buffer overruns and buffer underruns.
11.  How to idiot check user input.
12.  How to conduct boundary tests.
13.  Write code assuming multiple instances of the app are running
concurrently.
14.  How to avoid deadlocks on files and database records.
15.  How to connect to remote services.
16.  How to build relational database data models and issue SQL
statements, up to 3rd normal form.
17.  Learn how to hardcode nothing that could possibly change (box
names, user id's, domain names, etc).
18.  Understand ACL's - solving your database access problems by
sticking an anonymous ACL on it is not a viable solution.
19.  Document your code before/during duild, because you won't have time
(or energy) to go back later.  Then the poor sap that follows you will
look at your crappy code and spin his wheels trying to figure out what
you did.

And now for the soft science:
20.  If you don't understand the requirement, ask.  Don't make an
assumption, because, eventually, you will be wrong, and then you have to
explain to the customer (or the business group) why you are a moron and
can't read English and build a product to written specifications.
21.  Have your piers review your code.  Take criticism.  Realize that as
a monopoly (only person providing code), your code sucks.  Only with
pier review can you grow and build good code.

Bonus: Figure out the difference between:
	if (a == "something") { blah }
and 
	if (a.equals("something")) { blah }

(hint: one works, the other doesn't - both compile without error)

Just a few thoughts off the top of my head.

Regards,

George


Alpha Zenon Sanchez wrote:
> 
> This would be a question to all the programmers out
> there who are actually programming for a living.
> 
> What would be a good 'knowledge set' for wanna-be
> programmers?  Here is my list.  Please correct me if
> I'm wrong, or please add to the list.  I think anyone
> who works with computers will one-day have to look at
> source-code
> 
> 1. Variable Types
> 2. Arrays (and how to manipulate them)
> 3. Selection Statements (if/then/select case)
> 4. Loops (for, next ,do while, while etc...)
> 5. 'Intrinsic functions ' (ie...Math.Square()--ie
> Java)
>      - various String functions as well as math
> 6. functions - and the differences between them and
> proceedures
> 7. Algorithm development
> 8. Object-Oriented Programming
>    (information hiding, polymorhism, inheritance
> etc..)
> 
> Please add to list if necessary...
> 
> =====
> Thanks,
> Alpha Zenon Sanchez
> 
> __________________________________________________
> Do You Yahoo!?
> Yahoo! - Official partner of 2002 FIFA World Cup
> http://fifaworldcup.yahoo.com
> ________________________________________________
> See http://PLUG.phoenix.az.us/navigator-mail.shtml if your mail doesn't post to the list quickly and you use Netscape to write mail.
> 
> PLUG-discuss mailing list  -  PLUG-discuss@lists.plug.phoenix.az.us
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss

--
If you feel you have received a virus from me, please read
	http://www.georgetoft.com/virus.html
because it wasn't me!
--