Domain: apache.org
Stories and comments across the archive that link to apache.org.
Comments · 2,937
-
Not Only Ant...
Several Jakarta Subprojects are becoming top level projects:
db.apache.org (OJB and Torque)
avalon.apache.org (The Avalon server framework).
Plus Tapestry is moving into Jakarta. If you look around there really is a lot going on over at Apache, especially within the Jakarta projects. -
Bad link...thanks...
Apparently FreeDesktop's web admin doesn't know what a ServerAlias directive is.
-
Re:odd
Well I agree that that image was pretty flaky, but I wouldn't blame that on it being SVG. That image is a common PostScript example, it was probably just converted to SVG. Also keep in mind that this lib still doesn't pass most of W3C's SVG tests. For some nice examples of larger SVG's you could check out Batik
The most exciting thing I think SVG could bring to the desktop though is a rendering system as powerful as NeXTStep and Mac OSX. -
Re:I just don't care!
Yes, but wouldn't it be nice to have more scaling choices than large/medium/small? There's more to SVG than just scaling graphics anyhow. Serialization is another goal of svg, hence you may be seeing the beginnings of webservices dedicated to serving up icons, animations, etc... XML and it's cooperative technologies are evolving rapidly.
SVG puts powerful non-proprietary (bye bye gif) graphics capabilities in the hands of the xml architect. It fills a necessary gap in the XML arsenal. As the other technologies evolve, it's benefits will become more readily apparent. Imagine an XSL transform capable of transforming an XML document containing data into a graphical representation of itself...
Programmable content can be embedded as well in the form of applets and XHTML objects. Apache's Batik project is a good example of what you can achieve. Batik can be found here. -
Re:GPL is not "free"
I've been studying economic theory for over a decade. I work with economists every day.
With all due respect to your extensive experience: Are you intentionally trying to be obtuse? Is your method of trolling to say as much as possible without actually saying anything? Let's get to the core of this.
Your version of Apache webserver is not equivalent to the original; it is not fungible. If it is not fungible, it is not a commodity.
Have you really managed to miss the point so entirely? My original point was that the value of a derivative of a free software work is in the change (because the original is still freely available), and here you are to claim that the value is the change. Huh?
that there is no "open market" for GPL'd code
Sure there is: The authors and creators have openly made these products available, for $0.00, with no usage limitations. Here's the open market for Apache.
The going price for Apache is not zero, it is what the market will bear.
Sigh. And the market will bear $0.00 because the authors and creators have released these products freely. -
Re:Microsoft doesn't care
whereas in Java, there is no reuse at all. You have to _rewrite_ everything.
I've always wanted to say this: Are you on crack?
I won't be yet another poster who points you to the webpage that lists all the different languages that can target the JVM, but I will mention that the standard API contains about 24000 methods and properties.
Also please look at the level of reuse that happens at places like http://jakarta.apache.org. Java seems to lend itself to this, enhancing the increased reuse affect that open source provides.
- Brian. -
Re:Java not an option in my biology research
A couple summers ago, I was hired to create an application for the visualization and analyzation of a few hundred MB of data- ecological, environmental and meteorlogical.
Well, Java blew in my tests. That's not to say it doesn't work well for some things, but in the case of this client-side app, it just wouldn't have worked out. It was slow and a pain to develop for. This was a few years ago, and things haven't gotten much better, unfortunately.
Hogsquat. In fact, if you had this assignment today, it wouldn't take you much coding at all. Batik is an excellent Java based SVG toolkit that includes a Java SVG Brownser called Squiggle. Use java regular expressions to parse your data into some nice internel format (or jdbc if it's from a database). Then use the SVG DOM in the Batik toolkit to spit out SVG XML and render it using Squiggle. -
Re:Java not an option in my biology research
A couple summers ago, I was hired to create an application for the visualization and analyzation of a few hundred MB of data- ecological, environmental and meteorlogical.
Well, Java blew in my tests. That's not to say it doesn't work well for some things, but in the case of this client-side app, it just wouldn't have worked out. It was slow and a pain to develop for. This was a few years ago, and things haven't gotten much better, unfortunately.
Hogsquat. In fact, if you had this assignment today, it wouldn't take you much coding at all. Batik is an excellent Java based SVG toolkit that includes a Java SVG Brownser called Squiggle. Use java regular expressions to parse your data into some nice internel format (or jdbc if it's from a database). Then use the SVG DOM in the Batik toolkit to spit out SVG XML and render it using Squiggle. -
large-scale real world java application
-
What is Apache Ant?What is Apache Ant? Ant is a Java-based build tool. In theory, it is kind of like Make, without Make's wrinkles and with the full portability of pure Java code.
-
Re:Please take my advice
Two important differences between Flash and SVG related to internet-based vector-generated applications
SVG-based systems can be delivered using server with programs written in any language. Currently, you can deliver SVG web applications from Linux, Solaris, and Windows using SVG.pm module, C#, php, python, ASP, and Java through the Apache Batik. There is more info on these on the SVG wiki.
With Flash MX, you are currently limited to Windows servers. This means that you are forced to buy your entire server supply chain from monopolies. This is a Very Bad Thing.
SVG-based systems can be rendered by any internet-capable application. There are over a dozen independant rendering applications available free of charge, covering most operating systems.The Flash 6 viewer can only be downloaded for Windows, and is limited to desktop computers. It is fairly well known that the PC market is down and the bulk of growth on the web will be in portable applications (handhelds, phones, etc). In this market, there is *no* Flash player that I know of. This means that if you build a flash-based app for your windows visitors, you will need to spend that much money again building something for non-PC users.
There are more objective comparisons between SVG and Flash at carto.net.
--Hackmare
Perl SVG.pm evangelist
http://www.roasp.com/ -
Re:ApacheThis fix is Windows specific for all versions... then, a huge list of bug fixes follows that are common to all platforms. There was talk yesterday of 2.0.45 to fix a bug that came up with the patch for the two Win 9x / ME bugs... they instead released a patch today for that specifically so it seems that 2.0.44 is here to stay for now. That was my bug. It was pretty nasty. Apache would crash on startup.
I suppose running Apache on Win9x or ME is probably thought of as stupid, but I don't think anyone would be dumb enough to run on that platform as a production server. I think most of the people using Apache on 9x or ME are doing so instead of IIS or Personal Web Server... mainly for local testing in web development and programming.
I run Apache on Win98 for a couple of reasons:
1) My hacked version of PWS (IIS 3.something) scared the hell outta me.
2) *Someone* has to test Apache on Win98. Why?...
3) There are a lot of Win98 boxes in third-world countries. Those folks shouldn't have to pay to upgrade (if they only have MS skills) to XP or Win2K.Win98 is pretty securable if you have a decent hardware firewall, and don't install a lot of crap on it. Stick with Moz for email, Cygwin for functionality and it's a pretty nice little machine.
-
Re:Be careful upgrading
It should be reported that the problems were mostly with Win9x and ME. The Linux problems do not seem to have anything to do with the new release... a guy thought he had a problem with Mod_ssl and Apache 2.0.4x, but he actually had a broken public / private certificate pair.
In other words, be careful when upgrading to 2.0.44 on Win9x and ME... install the patch that was released to solve those problems with 2.0.44.
According to Will Rowe, 'The fix will be included in 2.0.45 which won't be far on the heels of 2.0.44' - Source. But, of course, in the meantime, if upgrading to 2.0.44 on 9x / ME, get the patch (above).
-
Re:Be careful upgrading
It should be reported that the problems were mostly with Win9x and ME. The Linux problems do not seem to have anything to do with the new release... a guy thought he had a problem with Mod_ssl and Apache 2.0.4x, but he actually had a broken public / private certificate pair.
In other words, be careful when upgrading to 2.0.44 on Win9x and ME... install the patch that was released to solve those problems with 2.0.44.
According to Will Rowe, 'The fix will be included in 2.0.45 which won't be far on the heels of 2.0.44' - Source. But, of course, in the meantime, if upgrading to 2.0.44 on 9x / ME, get the patch (above).
-
Re:Be careful upgrading
It should be reported that the problems were mostly with Win9x and ME. The Linux problems do not seem to have anything to do with the new release... a guy thought he had a problem with Mod_ssl and Apache 2.0.4x, but he actually had a broken public / private certificate pair.
In other words, be careful when upgrading to 2.0.44 on Win9x and ME... install the patch that was released to solve those problems with 2.0.44.
According to Will Rowe, 'The fix will be included in 2.0.45 which won't be far on the heels of 2.0.44' - Source. But, of course, in the meantime, if upgrading to 2.0.44 on 9x / ME, get the patch (above).
-
Jext and AntI've used the Jext text editor every working day for about 4 years now. It's free, Open Source, and written in Java so it works everywhere Java works. Originally I got it because I wanted a GUI text editor that worked exactly the same in Windows as in Linux. But now I use it because it's just a great product.
ANT, (Another Nice Tool) also runs anywhere Java runs. It replaces make files with an XML based build tool. I've written scripts that can check out code from cvs (or PVCS) compile, build jar files, build EJBs, deploy EJBs, stop and restart servers, and email me the results.
ANT can be found here It is also free and open source. Although each of these tools are written in Java they can be used to edit, compile and build programs written in other languages.
-
If you plan on running 2.0.44 under Win9x/ME...
...You'll need this patch. A bit of a glitch, now solved.
-
THERE IS SSL Apache 2.0.4x for Windows!!!
Actually, the issues they have under Windows are legal and nothing else. In fact, it works just great (if you don't believe me, compile Apache with SSL under Windows (you'll need Visual C++ 5 and up)... Apache Software Foundation even gives you detailed instructions on how to do it!)!
Since Apache 2.0.x is the first version of Apache for Windows that is largely considered a Production release they are debating the legal issues of releasing a BINARY version of Apache 2.0.x for Win32 compiled with OpenSSL libraries. This is especially the case since they are not SELLING the software to do it, so they can not really control who would use it. They will figure something out, but in the meantime, do not release it in their binaries.
As a matter of fact, Apache 2.0.4x Win32 can easily be setup to use OpenSSL and ModSSL! This is thoroughly explained at this web site. It even explains to you where to get binary distributions of it (not directly from Apache as discussed above).
In fact, on a single Pentium II or III with Win2k (even workstation) you have plenty of horsepower to use SSL and Apache 2.0.x. I would like to mention a couple of things, I use it in an academic environment and it has been running stable and secure for almost half a year now.
It has a commercial SSL certificate on it. Apache 2.0.x on Win32 is quite a bit tricky to get your private key and public certificate to work if it is PEM encoded. If it is not PEM encoded, it is a snap! That right there is one thing that can save you hours of head banging on wall! Make sure your key and certificate after you've received them are not PEM encoded for less aggravation. You can always run them through (at least the cert) OpenSSL to remove the encoding.
Also, your certificate chain must be put together the right way, but you should get instructions for that from your certificate authority.
I agree, Apache on Win32 is a much better choice than IIS. IIS can be a relatively secure product if administered properly. There are, of course, numerous security holes that have been publicized, and it should be mentioned that most were left open by the administrators who should have known better. They got IIS to work and didn't bother with security! Most of the reasons to NOT use IIS are the fact that you need at least NT Server 4, 5, 6, etc. (the workstation version of IIS is too limited for production usage) and the steep licensing that costs, and the fact that it has much more features than 99.9% of websites will need!
Apache, on the other hand, gives you a relatively secure environment from the get-go that makes you ADD the features you need. After working with Apache it should become apparent that this is clearly the way to go. Intelligent administration of servers can really make almost any modern OS relatively secure. Perhaps if Apache on Win32 catches on it may encite people to port more great open source server software to natively run on Win32 as Apache does (does not use Cygwin... though you CAN of couse, use the Cygwin version of Apache which won't perform as well as the Native Win32 version does). Plus, Apache can run just fine on NT workstation (saving plenty of money on the NT server licenses)!
Interestingly enough, Apache Win32 in our setup outperforms other departments at our institution using IIS on Win32! Perhaps benchmarks in this area should be publicized a bit more!
-
Re:Outsider Perspective
All this is answered here...
Apache 2.0... has new features built into it, however, it is still relatively new. And some bugs are still lying around here and there. I reverted to 1.3 because of serious bugs in the PHP module (in version 2.0.1x, .14? .15?, can't remember exactly).
Apache 1.3... is "old", but has built a solid userbase because of this age factor. It is also proven reliable and stable code.
-
Re:What exactly are the differences...
-
SVG Support
I have several projects at work right now that use SVG and there are cases where it's wonderful to use. For those interested, I would suggest Apache's Batik project.
The biggest problem I've encountered so far is with Mozilla. Unfortunately, Mozilla's SVG capabilities are non-existant and the current Adobe SVG plugin doesn't work with the brower. -
Re:For idiots like me -
Scalable Vector Graphics -- since it uses formulas (XML entities, really) for specifying where lines and shapes go instead of specifying location per-pixel, filesize will be small. Don't worry about XML verbosity preventing this, as SVG-files often are compressed.
The availability of libraries as Batik makes SVG-generation flexible and easy. One example: One project I was on concentrated on pulling numbers out of a database and visualising them as a graph. Filling a XML-document with values and applying XSLT we had instant SVG. Upside: Very scalable and interactive (our customer was very fond of "hotspots" on the graph). Downside: Lack of plugins. Fortunately, it was for their intranet.
As to impact, I do hope this catches on. I much prefer coding Java + SVG than Flash, if just for the fact that not having the Flash-plugin doesn't prevent my regular development with SVG. -
mod_specweb
"Some of the issues we have addressed that have resulted in the improvements shown include adding O(1) and read copy update (RCU) dcache kernel patches and adding a new dynamic API mod_specweb module to Apache."
Uhmm... isn't this considered cheating?
source code for the patch -
Re:Updating Cache data
eToys used a b-tree (Sleepycat?) database layer situated in front of the database layer - they would store objects in the b-tree, and fetch them from there if they had not expired.
You can actually read all about eToys and their implementations at perl.apache.org. -
Dynamic web applications
An excessive amount of PERL interpreters invoking simultaneously, for instance, can render a machine unstable. As thirty processes are attempting to interpret a script, countless others invoke simultaneously as queries are processed by the httpd. Meanwhile, a database server could be disconnecting the local clients as they "time out." The invariable result would be a poorly configured web server unsuccessfully attempting to process thousands of queries simultaneously. Upon logging in, a process requiring several minutes, the administrator would discover load averages of perhaps 100.00 to 150.00.
Of course, one could theoretically employ mod_perl and optimize the httpd to minimize undesirable effects. -
Re:That's hardly impressive
-
Re:Principles of Un-enforceable Rules
That is why the best way to control access is via URL Rewriting. Behold the glory and mystery that is mod_rewrite.
-
Log4j (was Re:Perhaps....)
If you're coding in Java, you might want to look into Log4J. You can assign priority levels to logging tasks (ie; "log this at debug priority") and then set via a configuration file what priorities for what classes will be logged.It isn't quite as low cost as no logging method calls at all, but it's impressively fast
... the Log4J intro page says ...On an AMD Duron clocked at 800Mhz running JDK 1.3.1, it costs about 5 nanoseconds to determine if a logging statement should be logged or not.
Given the general performance requirements (in terms of perceived user response time) of web applications, this is easily tolerable.
What's especially nice is that you can create a logging standard for all your classes. Log at the start and end of every method, log the constructor at the info priority. Log every error at the error priority. When it's time to switch to production, just modify a config file, and your logging switches from high levels of logging to only logging errors. To diagnose problems, just turn up the logging level for that class via the config file, and you get the level of logging you need.
I've been using Log4J for some time now, and I have to say that it's one of the most impressive things to come out of the Jakarta project
... and that's saying a lot. -
Log4j
Log4J is my debugger. 'cuz my webserver has no stinking GUI!
-
No improvement because debug is the wrong tool!Debugging hasn't improved much because it's really the wrong tool to ensure program quality. Debuggers don't prevent coders from creating bad programs. At best debuggers are after-the fact, symptom oriented fire fighting tools that often point to more deeply seated problems than individual atomic bugs. Also, don't forget that in modern object oriented code, the old linear debugging techinques often produce results that are different than the actual program will because of threading, race condition and other issues.
The inadequacies of debugging (not just the dubuggers themselves) as a method of ensuring quality is why methodologies like agile programming and extreme programming are garnering so much interest from developers. It's also why there has been an explosion of tools that can help with the creation of good software with fewer bugs, easier maintenance and a better chance of actually solving user problems. In the Java world, there is junit, mockobjects and log4J , that can all be used with ant so that tests can be automatically run with every build and source control systems can be automatically updated. One approach is the Naked Objects framework, which is a combinination of a design methodology and tools in one package that has advantages like the easy rapid prototyping and automatic user story docuemtation.
For example if you were using the Naked Objects framework to create a system, you might take the following approach (simplified here for posting):
- Start with an Exploration phase, which includes:
- Meeting of developers, administrators and end users to discuss the nature of the problem and brainstorm possible ways to implement the solution.
- Create a rough prototype immediately (Frameworks like Naked Objects makes rapid prototyping like this easy).
- Go back to the meeting, have everybody play with the code and make more suggestions and changes. Demonstrate the prototype frequently to elicit feedback.
- Repeat (often) till people are mostly happy with the results.
- This prevents the all-to-common situation where a written specification results in excellent software that doesn't actually solve any of the problems that the users have.
- Specification Phase:
- Use what you've learned to write a specification that includes lots of special case scenarios (use-cases, user stories etc.)
- Delivery Phase:
- Throw out all of the code you've already written... maybe keep the class and method names, but no actual functional code
- Write the tests FIRST. This includes unit tests, acceptance tests and corresponding documentation.
- Write the code to implement various user stories and test frequently.
- Auto-generate user training manual, which is based on the acceptance test code.
- Deploy to beta testers and be amazed at how happy they are with the product and how few bugs there are.
Notice that approaches like this emphasize getting the design right and doing constant testing to ensure that the code that is delivered actually does the job that is expected of it. Debugging is rarely required when such methodologies are used, though profiling can be of some use.
- Start with an Exploration phase, which includes:
-
No improvement because debug is the wrong tool!Debugging hasn't improved much because it's really the wrong tool to ensure program quality. Debuggers don't prevent coders from creating bad programs. At best debuggers are after-the fact, symptom oriented fire fighting tools that often point to more deeply seated problems than individual atomic bugs. Also, don't forget that in modern object oriented code, the old linear debugging techinques often produce results that are different than the actual program will because of threading, race condition and other issues.
The inadequacies of debugging (not just the dubuggers themselves) as a method of ensuring quality is why methodologies like agile programming and extreme programming are garnering so much interest from developers. It's also why there has been an explosion of tools that can help with the creation of good software with fewer bugs, easier maintenance and a better chance of actually solving user problems. In the Java world, there is junit, mockobjects and log4J , that can all be used with ant so that tests can be automatically run with every build and source control systems can be automatically updated. One approach is the Naked Objects framework, which is a combinination of a design methodology and tools in one package that has advantages like the easy rapid prototyping and automatic user story docuemtation.
For example if you were using the Naked Objects framework to create a system, you might take the following approach (simplified here for posting):
- Start with an Exploration phase, which includes:
- Meeting of developers, administrators and end users to discuss the nature of the problem and brainstorm possible ways to implement the solution.
- Create a rough prototype immediately (Frameworks like Naked Objects makes rapid prototyping like this easy).
- Go back to the meeting, have everybody play with the code and make more suggestions and changes. Demonstrate the prototype frequently to elicit feedback.
- Repeat (often) till people are mostly happy with the results.
- This prevents the all-to-common situation where a written specification results in excellent software that doesn't actually solve any of the problems that the users have.
- Specification Phase:
- Use what you've learned to write a specification that includes lots of special case scenarios (use-cases, user stories etc.)
- Delivery Phase:
- Throw out all of the code you've already written... maybe keep the class and method names, but no actual functional code
- Write the tests FIRST. This includes unit tests, acceptance tests and corresponding documentation.
- Write the code to implement various user stories and test frequently.
- Auto-generate user training manual, which is based on the acceptance test code.
- Deploy to beta testers and be amazed at how happy they are with the product and how few bugs there are.
Notice that approaches like this emphasize getting the design right and doing constant testing to ensure that the code that is delivered actually does the job that is expected of it. Debugging is rarely required when such methodologies are used, though profiling can be of some use.
- Start with an Exploration phase, which includes:
-
The best debugger ever
The best debugger I have ever used is Log4j. There is really no substitute for a good logging subsystem and grep. The chainsaw log viewer that is part of Log4j is also an excellent tool that can be used instead of grep.
I have also found that an interactive scripting language can be very handy. I use Jython for peeking into the state of Java objects and manually working with them. In my experience, this kind of manipulation can provide much better insight into the runtime behaviour of your code than an interactive debugger can. It can even be used to probe objects for which you do not have the code.
Of course, for non-Java development, there are usually analogs to these tools (syslog, perl, etc)
-
Don't Debug, Log
I haven't used a debugger in almost two years. I think the solution to diagnosing problems is to have in place a good logging framework (such as Log4J), which allows you to specify the verbosity of logging per subsystem. (Most people's complaints about using logging is that the noise/signal ratio is often too high to be useful.)
Usually, with a complicated program, it's fairly difficult (in an IDE) to trace the execution flow without stepping into the wrong subroutine or accidentally stepping over the routine you're really interested in. In a lot of cases, it will take more time setting up your IDE or debugger to do what you want, than it is to simply set up useful log statements that capture what you're really interested in. If you set up all your objects in Java to return useful debug strings from the "Object.toString()" method, you don't really need to use an IDE for inspectors or watches: You can customize debug information, avoiding information overload, and allows you to present just the critical data.
For memory profiling (leaks), disassemly, and performance analysis, a proper tool is very worthwhile. And I think that getting a stack trace from a core dump file useful. For everything else, I agree with Linus that debuggers don't really help you be more careful.
-
Or
-
Same here
...Banged my head on the wall until I found the solution you mention was suggested on the Apache site. They claim it's only a problem in a beta of MSIE but I've seen it in all recent versions up to 6.
-
Re:No idea what it does
I thought we already had MVC with JSP/servlet/EJB. How does Struts change this? From what I can tell it's some sort of framework that handles form data validation. That's always rather tedious, so if Struts saves time it's a good deal.
Mmmm.... Part of Struts is validation, although technically it is a separate component. (See the Jakarta Commons Validator) This is a minor (though extremely useful) part of it, however.
What makes Struts what it is are (arguably) ActionForms (basically, JavaBeans with some enhanced functionality) and ActionForwards/ActionMappings. These allow you to separate out the logic which operates upon data which will eventually be diplayed from the actual display of that data. Because solutions which depend upon JSPs tend to become a mass of unreusable scriplets, having this separation allows for a more maintainable site and avoids the pitfalls which have traditionally plagued JSPs.
-
Re:Not for a while
advice here said if you're starting a completely new application which is expected to last a while you should be writing to JSF now:
"If you have existing Struts-based applications that use the existing HTML tag library, feel free to continue to use them if you wish. Struts 1.1 offers full support for this existing functionality.
Once the integration library becomes available, you should do some experimenting and prototyping to determine the effort required to migrate your apps to the new JSF component architecture (I'm betting that the extra functionality you gain by doing this will be well worth the effort in many cases). As described above, the actual migration can be done piecemeal -- it doesn't need to happen all at once.
For applications now (or about to be) under development that have relatively short term schedules (i.e. the next few months), you should probably stick with the existing HTML library.
For applications with a longer lead time, seriously consider waiting for the ability to use JSF components instead of the Struts HTML tag library. Doing this will let you leverage not only the standard HTML components that come with JSF out of the box, but also the rich libraries of JSF components likely to be created by third parties in the future (including Struts developers)."
-
Nitpick.
Apache is covered by the Apache Software License not the GPL. It seems to be a X/MITish sort of license. Item 5 relates to your post:
* 5. Products derived from this software may not be called "Apache", nor may "Apache" appear in their name, without prior written permission of the Apache Software Foundation.
I suppose the case could be made that "Mapache" contains "apache". "LindowsOS" on the other hand is plausibly derived from "Microsoft Windows" and is intended in it's short form (Lindows) to sound like MS Windows short form (Windows). The whole thing is going to hinge on whether MS can convince a judge of that.
-
Re:Struts
JavaServer Faces IS NOT Struts. Please read up.
-
Re:Using PHP on a professional site
-
Re:standardization is a problem
You correctly described what
/usr/local is made for, however it still can be a big pain in the ass. For example, when you install Apache from source in a way described in the docs, you end up having to write "/usr/local/apache/bin/apachectl start" to run it, and your config is in /usr/local/apache/conf/httpd.conf (or something similar). It may be ok if all you run is Apache, but when you have more apps, it quickly becomes inconvenient to do anything with them. I'm a system admin and I have wasted hours many times to figure out what in /usr/local is what, when I needed to move the server to some other machine. And no, I couldn't copy the /usr/local tree, I had to install the same software on another system. That is why I think we should not put anything in /usr/local on production systems. That's right. But it doesn't mean no custom built software at all. This is how, in my opinion, it should be done: build your custom software and make the native distro package with your software, then install it with dpkg or rpm or what have you. I have zero tolerance for production servers with everything in /usr/local. I like scummvm because when I sync with the CVS version, all I have to do is "make deb" and "dpkg -i" the scummvm-cvs*deb I got. This is how all of the custom prepared software installed on Debian systems should be. That way I can see that I have scummvm-cvs_0.3.1cvs+cvs20021213-1_i386.deb installed on my system, without the need to find the sources which hopefully hasn't beed deleted. If I have a Debian box to clone, wich has empty /usr/local and /opt, I know I need to run "dpkg -l" to see what I need to install on the new system. The same goes with any distro, not only Debian: use only native packaging to install software on production systems. Just my two cents. -
To stop error "could not import mod_python.apache"
If you download the
.so from apache.org you'll
need to also get
http://www.apache.org/dist/httpd/modpython/dev/mod _python-3.0.0-BETA4.tgz
Uncompress it and copy lib/python/mod_python/*.py
to %PYTHON_HOME%/Lib/site-packages/mod_python
Otherwise you will get,
[Wed Dec 11 03:45:17 2002] [error] make_obcallback: could not import mod_python.apache.
when you are trying to do the tests & tutorials...
-
Dangerous Because of Microsoft Patent Claims TrapMicrosoft's CEOs have made it "patently" clear that they intend to restrict competing
.Net implementations by cultivating Microsoft's patents, such as United States Patent Application #20020059425 "Distributed computing services platform" [uspto.gov] which covers the design and inter-operation of .NET based implementations.
Although there is prior art examples of individual technologies such as the JVM etc, Microsoft patents such as the one mentioned, define and claim the interoperation of the components, in such a way that any re-implementations will be sure to be covered by the patents. This remains true even for the Microsoft specs submited to standardIn comparison, Sun has granted the Apache and all open source developers FULL access to the specs, test kits and granted the full rights to develop competing products under the JSPA . Sun has also fully pened up the Java development standards process under the new Java Community Process (JCP). Even to the point of granting full open source re-implentations of J2EE such as JBoss...
JBoss received the green light last week, after Sun told ComputerWire that it would allow all of the APIs contained in J2EE 1.4 to be open sourced. Fleury had expressed concern that certain critical APIs, including Enterprise Java Beans (EJB) 2.1, would be not be made available to open source organizations.
However, Java Community Process director Onno Kluyt said: "Sun's plan with 1.4 is that although it started before JCP 2.5, by the time it ships it will allow the creation of independent implementations. I don't think the APIs are that interesting, because the license that sits on top of J2EE will allow that [independent implementations]".
There those that claim that
.NET is open to re-implementation, but until Microsoft make a simliar public legal declaration to Sun's JSPA, any .NET reimplementation represents a pending legal mindfield. -
Re:ARRRRGGGGHHHH!
No *kidding*. The *point* of HTML is that the author should *not* care or try to force a font size on the end user -- the end user should be free to choose whatever's most convenient for them.
Unfortunately, the market got flooded with "web designers" who came straight from print magazines or got all their ideas from print magazines.
Hi-Ho, a trolling we go, eh?
Look, I'll make this very simple. Plain text webpages are ugly. XHTML compatable pages are ugly. HTML 1.1 compatable pages are ugly. Leaving the border around your image link is ugly. Not using tables is ugly.
Why do you think people hire webdesigners? Because they know how to create an eye catching site. Why do you think magazines look like they look? Because, through trial and error, they have found what works.
People want webpages to seem alive. People want an interactive web. This is something that's a foreign concept to most linux users: You are all used to seeing pages like CGIwrap's webpage that is an assault to the eyes at the expense of being compatable with all browsers including lynx and mosaic. Or, you might get as advanced as the apache webpage which is not as much an assault on the senses, but is still boring.
I don't care what this loser says, he needs to get out of the ninteys and give people what they want. It's all about target marketing. Linux geeks are content to see pages like the cgi-wrap page. HOWEVER, normal people are impressed by things that move, things that make noise, things that interact. You're suggesting we should give people a bycicle because it'll get them from a to b and it's easy to use. But there will always be a market for flashy sport compacts, and if you ignore these people in favor of backwards compatability, you're going to alienate a good section of the population.
Take a look, for example, at the 2 Advanced Studios webpage. Tell me you've seen a cooler webpage, and I'll tell you you're lying. Or, take a look at some of the work they've done.
Making a good looking, interactive page, with javascript menus, flash animations, etc, means "I have taken an interest in my work, and I care what it looks like". Some of you may have seen his XHTML bullshit at the top of this page and thought, "Oh, wow, this guy is great. This page is so readable, and so well organized." But, what most of the rest of us that live in reality said was "Jesus, that's aweful. It looks like he made it with an old copy of Frontpage 98 that was included with his windows 98 install". It looks aweful.
For example, this guy is claiming that flash intros suck. Some of them do, but done right, it definately adds to the "wow" factor of the website. And the "wow" factor makes you money, or gets you accolades, not the "this will work in every browser ever, including my cell phone and my command line" factor.
Get with the times. There are graphic designs artists and webpage designers for a reason. The reason is because they know how to make a page look better than you do.
This guy's just a douche that's to stupid to smell the change and know he's obsolete. People like him are the reason it's ok to have a website that looks like shit, and I say I've had enough.
~Will
-
POI
Worth a look, jakarta project called: POI: Poor obfuscation Implementation, referring to the quality of file archiving by Msft Office.
Take a look at HDF "horrible document format" which handles MS Word files. -
Re:wvWareI'll second wv, formerly know as MSWordView. I've used it since before the name change and have been satisfied. According to the blurb at freshmeat,
wv (formerly known as MSWordView) is a library that understands the Microsoft Word 2000, 97, 95 and 6 file formats (".doc"), and is able to convert Word documents into HTML, which can then be read with a browser. It also allows other programs access to Word documents for the purpose of converting them to other formats (like RTF, PostScript, and PDF), and is currently being used by Abiword as its word importer.
If by chance you have any Java around, the POI HDF APIs are great for manipulating that Horrible Document Format. -
Apache Prtable Runtime
Nothing new here, APR has been doing all this for quite a while now.
-
Re:Does it risk taking down the server?
As far as I know, it doesn't have a "safe mode" like PHP does, so scripted pages run under the server's user id with all of the server's access permissions. However, Apache 2 provides the new perchild MPM, which allows you to assign different user ids to each virtual host. Unfortunately, according to the documentation "this MPM does not currently work on most platforms. Work is ongoing to make it functional."
Architecturally, assigning user IDs to virtual hosts is a far better solution (even the PHP developers admit that "safe mode" solves the problem at the wrong level) -- once it works, it will obviously solve the problem for all modules, including mod_python and mod_perl, without requiring the module developers to each develop their own, seperate safe mode equivalent.
-
struts and JavaServer FacesDon't now if they mention this topic or not in this book -
If you are currently using Struts 1.1, you should consider the upcoming changes to it vis-a-vis Sun's JavaServer Faces specification.A recent and good introductory article about JSF is A First Look at JavaServer Faces
Craig McClanahan mentioned the transition to using JSP Faces in one of his Struts presentations at the recent ApacheCon and it has been discussed on the Struts mailing lists (e.g. http://www.mail-archive.com/struts-dev@jakarta.ap
a che.org/msg08457.html -
Re:What is Struts?
Struts is an online J2EE framework that utilizes the Model View Controller pattern. Look on the website for a good overview.