Check out this article on perl.com describing how to use Apache/mod_perl to drive a "data driven processing pipeline" through XSLT. (It is a follow-up to this article introducing AxKit, which is a document server.
We use Sawmill where I work. It is very thorough, and it supports every different type of web log file format I can think of (Apache and IIS are supported, of course). Additionally, it is very thorough in it's reports, graphs, and statisitics with ways to customize such.
For one, use CVS. Then, write a Perl script (or Python or whatever) that parses the CVS repository for anything that has been changed in the last seven days. Send that to the printer. Run at as a cron job every Tuesday.
Voila! Gather a meeting with the print outs and you have instant code review. At least, that is what we do.
I am a Senior at CWRU, where Computer Engineering is, basically, a superset of Computer Science. As a CE, you take every software class a CS person does; but then you take the Engineering core instead of the Arts and Sciences core. The Engineering core is infinitely harder than the A&S core, and that fact leads to some elitism around campus b/w CE's and CS's (i.e. CE's think they are more 31337 than CS's).
One good thing about CE is the fact that you do take a lot of EE classes and the more advanced electromagnetic physics classes. And, while you may think that those have nothing to do with Software Dev., they actually do... a lot. Understanding what a computer does from top to bottom, from every 0 to every 1, for every 5 volt difference, and understanding what voltage is... well, you are a better programmer because of it. Note: I did not say you would be better than a CS programmer, but you personnally would be a better programmer than not having taken those classes. Oh yea, you also take the more advanced maths, which helps a great deal. There is a lot of math involved in programming. Well, not in VB programming; but in any real language while creating a real application. Any analysis or algorithm or testing or verifying is done via mathematics. So, math helps.
'make world'
There is no "upgrade" for BSD's. And, I would rather not have one. Any OS (from Windows to Linux) I have ever upgraded, I format first (sans things like security updates). However, on FreeBSD, I am comfortable with just 'make world'.
So, to answer your question, no, you cannot say:
# cd/usr/ports/freebsd/4.2
# make install clean
And, in the end, I would not want to nor would I ever do it.
"Java is an interpreted language and can run on any platform"
Java does not run on any platform. I hate when things like that are said. Don't get me wrong, I like Java a lot. But, in the end, Java "officially" runs on three platforms Windows, Solaris, and Linux.
If you want a portable language (if that really is all that of a deciding factor when put up against factors such as performance, robustness, maintainability, etc. -- notice, I am not saying that Java isn't any of those), go with Perl. Or, *gasp* C/C++ or Python. I can reliably run any of that source on my *BSD boxes, a HP-UX box, IRIX, AIX, etc.
Java is portable. It is just not as portable as Java-folk like to espouse.
I am not sure if you want to quanitfy this as being beautiful or what-not, but I am sure you can find examples of many different types of code.
Here is the FreeBSD source tree fully HTML-ized.
And, in effort to not start a war with the zealots, here is a link to view the Linux kernel source.
There are a lot of different types of techies/geeks. Each type (or, more accurately, each indivdual) works in different ways with projects, code, and deadlines. Here is what I have found with myself and other programmers I have worked with. It is a gross generalization, but it can be used as a pseudo-guideline.
One kind of geek will give you a deadline or receive a deadline and work like nothing else to match the deadline. This geek considers the deadline a competition, and he or she will do whatever it takes to make the deadline. While this may sound like an uber-programmer and hard worker, more times than not, bad code will be produced when this programmer feels the impending crunch.
Another type is the lazy programmer. He or she will code a little, read slashdot, code a little, read rootprompt, code a little, read arstechnica. When the deadline approaches and you ask the programmer what is up with the project, he or she will begin spouting excuses from every orifice about switching requirements, feature creep, unseen complications, etc. (Watch for the excuses involving heavy uses of acronyms like "the TCP/IP changover model for the hex-a-bit transceiver is not enabling the XML specification via the BSD socket..." -- they are trying to confuse you with meaningless geek mumbling.) These programmers need another programmer to get them going -- a oft-sought uber-programmer to get them to stretch their limits.
Another type cannot give deadlines because they see things as an engineer. The coder may realize what is to be implemented, but gets caught up in the micro-scale and just starts summing the hours together of work put into each method e.g. 3 hours + 2 hours + 4 hours +... = 5 months, 13 days, and 3 hours.
There are many other types, but I feel as if continuing along this line involves just archetyping everyone I know.
It just comes down to communication and mutual understanding. A programmer likes to solve problems. In the zone, we want no distractions. We want to solve the problem and move to the next. We don't know how long it will take to solve the problem (or complete the system) because it does not matter. What matters is getting to the solution. And then, we are constantly interrupted with new problems brought about by others (Manager: "Wouldn't it be cool if our software ?")
Like I said, mutual understanding and communication... and to be left alone.
Well, in the spirit of engineering, 1000 CD's (assuming that each CD takes up approx. 54cm^3) results in a total volume of approx 54,000cm^3 or.054m^3.
I, like the others listed above, use EditPlus on my Windows boxes. In *nix, I use Nedit. Actually, I do not know whether or not Nedit has syntax highlighting for PHP; but you can check it out.
I have been looking for something very similar; though, I am in the market for a pop server. Basically, I want to acquire an account that I do not have to worry about connecting to the server through any ISP, or the domain changing, etc. I thought about setting up my own, but I want something more permanent than that i.e. a service provider for it.
Plus, I hate having to use web-based email to solve this. Has anyone heard of this?
I agree with both of your sentiments; however, since you can code but choose not to on account of lack of documentation, why don't you be the one to generate that documentation for other programmers? I know that reading through code sucks. I hate taking up someone's old project and having to read through their code. But, if we want to push forward, someone needs to do the dirty-work. The problem is, we expect the person who coded it to also document it. While that may be the easiest because they understand the code, we, as users who know how to code and read code, can offer something more than just being leeches on the skin of those with the initiative to provide us with software.
I read his link to his review of Companies' web sites that scored well against his top ten mistakes of web design. IBM scored first with a rating that represented that IBM's web site only violated the ten rules 11% of the time. I cannot believe this. I, an owner of an IBM computer, find their web site to be garbage. It is hard to navigate. The Aptiva link (for people with Aptiva computers who are looking for drivers) rarely works. The driver page usually refers you to another web site that no longer exists. And, most of all, it takes almost 20 minutes to navigate to the area where you can look for drivers.
I do not know what is happening with the world when IBM's (or 3com's) site is considered good.
Hmmmm... I suppose I wouldn't consider it a gadget either. Okay, I reject it as being a "top ten" gadget. Though, it would be on my list for top ten inventions.
I can't believe contraception was not on the list. It seems to me that birth control (specifically, the pill and other "drug" methods) freed half of the population to more reliably join the work force along with sparking the sexual revolution. I would think such an impact would qulify this. Of course, it is no electric hand dryer (which I am hoping was added as a pathetic attempt at comedy).
Greatest... game... ever!
And, you don't even need that powerful of a machine considering it's a rather old game.
enochI wrote up an article on installing and configuring the Apache 2.x series with SSL, mod_perl, mod_php, standard graphics libraries (GD, libjpeg, libfreetype, libpng), FreeTDS (to connect to MS SQL Server), and pam_smb/mod_auth_pam (to authenticate against an NT PDC). Pretty exhaustive Apache setup. At the very least, I can assure you that everything works just fine even with those ultra-specific Apache needs.
enochThen as time so pass, more and more "features" are added into perl 5.004 and the result is that now you have too many features spoils the broth.
I'm sorry. I think you are looking for this every-feature-is-in-the-core language.
Glad to point you in the right direction!
enoch
- Good problem solving techniques
- A proclivity for reading documentation and surfing archived email lists in the wee hours
- patience
- perseverance
After you have achieved such, your system administrative abitities will be tripled.Enoch
Jeremy
It's not free, but it is very nice.
Jeremy
For one, use CVS. Then, write a Perl script (or Python or whatever) that parses the CVS repository for anything that has been changed in the last seven days. Send that to the printer. Run at as a cron job every Tuesday.
Voila! Gather a meeting with the print outs and you have instant code review. At least, that is what we do.
Jeremy
Having your resume linked to off of Slashdot will probably help with the job offers.
Jeremy
I am a Senior at CWRU, where Computer Engineering is, basically, a superset of Computer Science. As a CE, you take every software class a CS person does; but then you take the Engineering core instead of the Arts and Sciences core. The Engineering core is infinitely harder than the A&S core, and that fact leads to some elitism around campus b/w CE's and CS's (i.e. CE's think they are more 31337 than CS's).
One good thing about CE is the fact that you do take a lot of EE classes and the more advanced electromagnetic physics classes. And, while you may think that those have nothing to do with Software Dev., they actually do... a lot. Understanding what a computer does from top to bottom, from every 0 to every 1, for every 5 volt difference, and understanding what voltage is... well, you are a better programmer because of it. Note: I did not say you would be better than a CS programmer, but you personnally would be a better programmer than not having taken those classes. Oh yea, you also take the more advanced maths, which helps a great deal. There is a lot of math involved in programming. Well, not in VB programming; but in any real language while creating a real application. Any analysis or algorithm or testing or verifying is done via mathematics. So, math helps.
Just my $.02,
Jeremy
'make world'
/usr/ports/freebsd/4.2
There is no "upgrade" for BSD's. And, I would rather not have one. Any OS (from Windows to Linux) I have ever upgraded, I format first (sans things like security updates). However, on FreeBSD, I am comfortable with just 'make world'.
So, to answer your question, no, you cannot say:
# cd
# make install clean
And, in the end, I would not want to nor would I ever do it.
Jeremy
Someone forgot to put on a /I on the end of that block. All of SlashDot is italicized. Abug in Slash?
Jeremy
"Java is an interpreted language and can run on any platform"
Java does not run on any platform. I hate when things like that are said. Don't get me wrong, I like Java a lot. But, in the end, Java "officially" runs on three platforms Windows, Solaris, and Linux.
If you want a portable language (if that really is all that of a deciding factor when put up against factors such as performance, robustness, maintainability, etc. -- notice, I am not saying that Java isn't any of those), go with Perl. Or, *gasp* C/C++ or Python. I can reliably run any of that source on my *BSD boxes, a HP-UX box, IRIX, AIX, etc.
Java is portable. It is just not as portable as Java-folk like to espouse.
Jeremy
I am not sure if you want to quanitfy this as being beautiful or what-not, but I am sure you can find examples of many different types of code.
Here is the FreeBSD source tree fully HTML-ized.
And, in effort to not start a war with the zealots, here is a link to view the Linux kernel source.
Jeremy
40GB isn't enough?
How many mp3's do you have?
Jeremy
There are a lot of different types of techies/geeks. Each type (or, more accurately, each indivdual) works in different ways with projects, code, and deadlines. Here is what I have found with myself and other programmers I have worked with. It is a gross generalization, but it can be used as a pseudo-guideline. ... = 5 months, 13 days, and 3 hours.
One kind of geek will give you a deadline or receive a deadline and work like nothing else to match the deadline. This geek considers the deadline a competition, and he or she will do whatever it takes to make the deadline. While this may sound like an uber-programmer and hard worker, more times than not, bad code will be produced when this programmer feels the impending crunch.
Another type is the lazy programmer. He or she will code a little, read slashdot, code a little, read rootprompt, code a little, read arstechnica. When the deadline approaches and you ask the programmer what is up with the project, he or she will begin spouting excuses from every orifice about switching requirements, feature creep, unseen complications, etc. (Watch for the excuses involving heavy uses of acronyms like "the TCP/IP changover model for the hex-a-bit transceiver is not enabling the XML specification via the BSD socket..." -- they are trying to confuse you with meaningless geek mumbling.) These programmers need another programmer to get them going -- a oft-sought uber-programmer to get them to stretch their limits.
Another type cannot give deadlines because they see things as an engineer. The coder may realize what is to be implemented, but gets caught up in the micro-scale and just starts summing the hours together of work put into each method e.g. 3 hours + 2 hours + 4 hours +
There are many other types, but I feel as if continuing along this line involves just archetyping everyone I know.
It just comes down to communication and mutual understanding. A programmer likes to solve problems. In the zone, we want no distractions. We want to solve the problem and move to the next. We don't know how long it will take to solve the problem (or complete the system) because it does not matter. What matters is getting to the solution. And then, we are constantly interrupted with new problems brought about by others (Manager: "Wouldn't it be cool if our software ?")
Like I said, mutual understanding and communication... and to be left alone.
Jeremy
Well, in the spirit of engineering, 1000 CD's (assuming that each CD takes up approx. 54cm^3) results in a total volume of approx 54,000cm^3 or .054m^3.
Get a box of this size.
Jeremy
I, like the others listed above, use EditPlus on my Windows boxes. In *nix, I use Nedit. Actually, I do not know whether or not Nedit has syntax highlighting for PHP; but you can check it out.
Jeremy
Have you ever heard of Solaris? What about Java? Sun odes not just make hardware. Far, far from it.
Plus, I hate having to use web-based email to solve this. Has anyone heard of this?
Enoch
I agree with both of your sentiments; however, since you can code but choose not to on account of lack of documentation, why don't you be the one to generate that documentation for other programmers? I know that reading through code sucks. I hate taking up someone's old project and having to read through their code. But, if we want to push forward, someone needs to do the dirty-work. The problem is, we expect the person who coded it to also document it. While that may be the easiest because they understand the code, we, as users who know how to code and read code, can offer something more than just being leeches on the skin of those with the initiative to provide us with software.
Jeremy
the statement at the end of the article.
/. effect and decide to pay some homage?
"Natalie Portman had hot grits poured on her today by rabid slashdot fans"
Was that always there, or did they notice the weight of the
The project that is trying to get WINE running on BeOS has, I believe, gotten X running. You can check out their web site here.
Jeremy
I read his link to his review of Companies' web sites that scored well against his top ten mistakes of web design. IBM scored first with a rating that represented that IBM's web site only violated the ten rules 11% of the time. I cannot believe this. I, an owner of an IBM computer, find their web site to be garbage. It is hard to navigate. The Aptiva link (for people with Aptiva computers who are looking for drivers) rarely works. The driver page usually refers you to another web site that no longer exists. And, most of all, it takes almost 20 minutes to navigate to the area where you can look for drivers.
I do not know what is happening with the world when IBM's (or 3com's) site is considered good.
Jeremy
Hmmmm... I suppose I wouldn't consider it a gadget either. Okay, I reject it as being a "top ten" gadget. Though, it would be on my list for top ten inventions.
Jeremy
I can't believe contraception was not on the list. It seems to me that birth control (specifically, the pill and other "drug" methods) freed half of the population to more reliably join the work force along with sparking the sexual revolution. I would think such an impact would qulify this. Of course, it is no electric hand dryer (which I am hoping was added as a pathetic attempt at comedy).
Jeremy