Domain: perl.org
Stories and comments across the archive that link to perl.org.
Comments · 847
-
The Perl 6 VM is Parrot
The virtual machine that will run Perl 6 is Parrot, an innovative register-based JITed VM optimized for dynamic languages.
It can also run a subset of Python (compiled with Pirate), Ruby, Tcl, brainf*ck, Ook!, Common LISP, BASIC, Lua, m4 and a few others, all of which are more or less incomplete.More details on the Parrot site and the Wikipedia page on the Parrot VM.
If you like that sort of things, you can help!
-
Perl people, check out Catalyst
This is an MVC framework for Perl that resembles RoR in a lot of ways.
http://catalyst.perl.org/
It's very nice so far, especially the controller portion. There's lots of addons and plugins for it, all of which are entirely optional. It's actually very open-ended and easy to extend.
I use the controller classes extensively, but write my own model, view, and support classes. Catalyst culture seems to encourage Class::DBI parentage as a base model class, but it's simple to roll your own (I hate CDBI, so I based mine on Ima::DBI instead). Your classes can work independently of Catalyst... it imposes no restrictions or inheritance constraints on you. Worth checking out. -
Re:Who Uses Perl Anymore?
-
Catalyst
I'd like to see more distributions include Catalyst. I think Mandrake is the only one that does, now. If MVC frameworks like Catalyst were more universally available (as PHP is now) they'd get a lot more use.
-
Re:command line
One word: Net::LDAP. If you know a little bit of perl, this can be of huge help. It's well documented, has a pretty complete implementation of the ldap v3 specs, and works well with any vendor soft. Once you have a couple of working scripts, you can whoop your own tools in a matter of minutes, and coupled with cgi, you're halfway towards your own user admin gui, or a white pages application. I use it all the time at work, and it's been a lifesaver. (especially since the Netscape/iPlanet/whatever gui isn't the most user friendly...
-
Scripting languages and LDAP
Most scripting languages will have some kind of LDAP module available, like python has http://python-ldap.sourceforge.net/ and perl has http://ldap.perl.org/.
So even if Fedora's directory server doesn't offer any console tools (i dont know if it does), it won't be any problem making scripts manipulating its data. Take a look at this example on howto remove a record, its from the python-ldap site, and it isn't exactly overly-complex to use from the looks of it :-)
import ldap
try:
l = ldap.open("127.0.0.1")
l.protocol_version = ldap.VERSION3
username = "cn=Manager, o=anydomain.com"
password = "secret"
l.simple_bind(username, password)
except ldap.LDAPError, e:
print e
deleteDN = "uid=anyuserid, ou=Customers,ou=Sales,o=anydomain.com"
try:
l.delete_s(deleteDN)
except ldap.LDAPError, e:
print e -
How to write unmaintanable code
-
Re:Prior Art: 1960
-
Re:Perl's place in todays world?
Hi:
Just a comment on perl and threads - what (functionally) would a perl script need in terms of thread-like multitasking/parallel tasking that the astonishing POE doesn't provide ?
Actually, tangent to the comment - why doesn't POE get the props it deserves as an AFAIK perl-unique resource ? Most casual perl users don't seem to even know it exists and what it doesn/can do ?
http://poe.perl.org/?What_POE_Is
Thanks - -
Re:Bring back Larry!
It's not an issue whether we all want Larry to take over Perl again. It's more a matter of whether or not he wishes to resume such leadership. And judging by his past statements, he is not interested in that. He wants Perl 6 to be a community effort, as it has been.
As it says on the Perl 6 home page:
"Perl 5 was my rewrite of Perl. I want Perl 6 to be the community's rewrite of Perl and of the community." - Larry Wall, State of the Onion speech, TPC4 -
Re:hiding your address
Have you been living under a rock for the last ten years? Of course web programming in PHP is easier than CGI! Just about anything is easier than CGI, not matter what language the CGI script is programmed in. If you want a similar (but more powerful) PHP-like environment for Perl, I highly recommend HTML::Mason. Two other interesting mod_perl environments are AxKit (centred around XML and XSLT) and Catalyst (a tight MVC framework). But they both are rougher to develop on, requiring restarts of Apache to load new code. At least Catalyst provides its own mini server for testing/development purposes.
-
Re:Performance wise..
Very few (recent) comparisons around. From my experience, however, if you're running a simple web site with many SELECTs over a single table then MySQL may well suffice. If you're doing serious stuff with multiple table/view joins then you should move up a gear and use PostgreSQL.
I've moved completely to PostgreSQL (works beautifully on core Drupal too) and have found complex queries complete in a fraction of the time. I had a complicated application which had multiple threads inserting, updating and reading all at the same time- complete run-time was reduced to a tenth by using PostgreSQL.
It works for me- just make sure you use ADODB in PHP or Perl/DBI to make switching easy when you hit the MySQL limits.
One more thing: I work with serious mainframe DB2 during the day. MySQL just doesn't compare. Postgres feels closer. -
Re:Perl on rails?
yeah, Maypole and Catalyst.
-
Re:Perl on rails?
yeah, Maypole and Catalyst.
-
It's not frivolous
What a weird article description. Getting people to hack on frivolous projects generally isn't a problem. Getting them to hack on tough projects can be. Okay, maybe this is a test implementation in a funky language, but this isn't a frivolous project according to the Perl folks; Damian Conway described the work as "both amazing and amazingly useful: as a way of
exploring the deeper design and implementation issues" here:
http://www.nntp.perl.org/group/perl.perl6.language /19263
Worst of all, the word frivolous distracts from the point of the article, which is all about techniques you can use to help making hacking on any project fun. It's not about only hacking on projects that are instrinsically fun, as 'frivolous toys' tend to be. -
Re:Why so many stories about mono?
python, perl & ruby are very dynamic and from what i read in the press... will be hard to impossible to port over
.NET-vm...
U may be little uninformed, but look at this page :
http://svn.perl.org/viewcvs/parrot/trunk/languages /
http://svn.perl.org/viewcvs/parrot/trunk/languages /LANGUAGES.STATUS?rev=9407
as u see there is alot of work gone to support many languages over parrot-vm.
Yes I know it is not finished yet ? But when they are I will defenetly preffer them over .net-vm. -
Re:Why so many stories about mono?
python, perl & ruby are very dynamic and from what i read in the press... will be hard to impossible to port over
.NET-vm...
U may be little uninformed, but look at this page :
http://svn.perl.org/viewcvs/parrot/trunk/languages /
http://svn.perl.org/viewcvs/parrot/trunk/languages /LANGUAGES.STATUS?rev=9407
as u see there is alot of work gone to support many languages over parrot-vm.
Yes I know it is not finished yet ? But when they are I will defenetly preffer them over .net-vm. -
They can't "close the source"
They gave it away already. They can create a proprietary branch, but taking something out of the public domain requires large bribes to congress. It amazes me that folks still use the GPL. I attribute it to mental laziness and hokey religeons (w/ ancient weapons).
Perl's Artistic License and the Apache License are better licenses.
BTW - I am a lawyer and this is personal opinion, NOT a legal opinion. -
GPL Considered Dangerous?To that end, I've become an early adopter of the Artistic License 2.0, Perl 6's upcoming license. From the preamble:
This copyright license states the terms under which a given free software Package may be copied, modified and/or redistributed, while the Originator(s) maintain some artistic control over the future development of that Package (at least as much artistic control as can be given under copyright law while still making the Package open source and free software).
-
Re:Fractured Internet?
I believe you mean: Duct tape!
-
Re:Webservices gone mad
Dude, you forgot the URL:
Duct tape! -
Re:They were given away to OSCON attendees...
You might be right that he's not a functional programming guru, but I think your argument is a bit of a strawman. On the book site, he says "Higher-Order Perl is about functional programming techniques in Perl. It's about how to write functions that can modify and manufacture other functions." It doesn't say it's about functional programming in general, or how to be a good functional programmer, but how techniques from functional programming can be applied to Perl. In any case, you might look at for example this message, or this one or this one to decide if he knows enough about functional programming (I couldn't tell you).
-
Re:What's Perl being used for today?
What big-name projects is Perl being used for today? While it was once very big for web scripting, that arena now seems to be dominated by PHP, Ruby-on-Rails, ASP, JSP, and so forth.
The trends have moved towards frameworks. Perl now has Catalyst, which is "heavily inspired by such frameworks as Ruby On Rails, Maypole, and Spring," but it's coming a little late(r) to the party.
Even Pugs, a Perl 6 compiler, is written in Haskell rather than Perl.
I once had to write an interpreter for a subset of the OCaml language in OCaml for a class. -
"future of cross-platform development"
-
Don't forget Catalyst!
Rails and Struts already have this feature.
Don't forget Catalyst!
Of course, being later to the game allowed Catalyst to one-up the competition with the utmost in flexibility: full regex-based URL handlers! -
Re:People are looking at this the wrong way
as does perl's catalyst.
-
Re:Moving from Perl (slightly OT)
OK, I suggest you read Learning Perl Objects and References (O'Reilley) and check out Maypole. After a month or so of pain, you'll be wondering why you thought perl was defficient agian. Mod_perl is really the way to go, combined with all the stuff on CPAN (My favourites module groups are LWP:: and Lingua::) for doing real - non web - work, you won't look back. I'm in roughly the same position as you by the way. Self taught, mostly I consider myself a scientist, not a programmer and I get to use the tools that I choose because of that. I'd learn python or ruby (but not php, I dabbled in that a few years ago and it was way too ugly) if I didn't have better things to do with my time.
-
Re:Why is Perl so hated?
count($arr) is better than $#arr because it's bleeding obvious what count($arr) does.
Not to me. count($arr) should always return 1, unless you meant count( @arr ) and want to break the consistency of list flattening everywhere else in the language. Of course, in Perl 6 you can say @arr.elements to get the number of elements in the array (though "elements" is a long method name, so there may be an alternate at some point if there's a good, clear, shorter synonym) or evaluate the array in numification context with +@arr.
And if you didn't know what $#arr does, there's no way to index that sort of thing in manual.
Sure it is! See perlvar, one of the oldest documentation pages. (If you never even knew of that page, it's well worth your time to browse the perltoc manpage.)
-
Re:Moving from Perl (slightly OT)
Ruby on Rails if you want to switch, Catalyst if you're comfortable with perl and don't want to switch. There are excellent introductory articles on the O'Reilly web site for both of them.
-
Re:Attracting new users, competing with Python?
Perl6 has the advantage of starting from the beginning, taking all that was learned from the evolutionary development that lead to Perl5, as well as the lessons learned from other languages like Python and Ruby. Honestly, read through the design commentary for Perl6 by Larry Wall. There are a lot of good ideas there, and Perl6 promises to be a much cleaner, more consistent and more elegnt language than Perl5 - that is, it has learned what was good in Perl5 and thrown away the (vast amounts) of cruft. Looking at what they're proposing, if it actually works as promised then I do think it will compete well with Python - and I'm a Python person myself*. Honestly, read a little of what Perl6 has to offer before you dismiss it out of hand. It looks like it will be a very nice language indeed.
Jedidiah.
* One of the things I like about Python is that they're willing to deprecate and then *remove* features to help combat cruft. -
Re:It's a php/perl post!
Where are the Ruby on Rails people? I expected 100 of them to speak up before the traditional "FRIST PSOT!!!"
Well, for one, perl now has a nice framework similar to Rails called Catalyst (http://catalyst.perl.org/). It's a lot closer to Rails than a lot of other languages' attempts to clone Rails. And yet the Catalyst dev team have specifically chosen to diverge from Rails in certain areas, trading a bit of simplicity for complete flexibility, avoiding some limitations you could run into in Rails. -
"Fundamentals of Astrodynamics"is the book you want. It's by Bate, Mueller, and White, and it works from first principles up to "how we designed the Apollo lunar trajectories".
The easiest way to conceive of interplanetary orbits is to first pretend that they lie in a single plane (the plane of the ecliptic) and then pretend that the planets themselves are insignificant for most of the trip -- so you consider only the gravitational field of the Sun. Then your orbit is an ellipse. It's pretty easy to show that, if you're going at Earth's orbital velocity, the ellipse that gets you from Earth's orbit to any other nearly circular orbit with the least change in velocity (ie rocket fuel) is an ellipse that is tangent to both orbits.
Once you've figured that out, you have to figure out when to launch to get to Mars's orbit in the same place that Mars happens to be. Those times happen at a particular phase of Mars's and Earth's orbit.
You can do pretty well by pretending that you can neglect the Sun entirely until you get far enough from the Earth, then you can neglect Earth and Mars entirely until you get close enough to Mars. That is the technique that was used for Apollo trajectories -- the "method of spliced conics". You can hear some evidence of it in the Apollo 13 movie, when they talk about "entering the Moon's gravitational field" or something like that -- the Moon's gravitational field extends throughout the Universe, of course, but to simplify the calculations they neglected everything but the mass with the strongest gravitational force on the capsule.
Nowadays you can get really, really good orbital elements for each of the planets online, which lets you calculate exactly where each planet is at any given time. You can just code up an insanely cheesy inverse-square-law integrator in PDL or one of the other free languages -- or even a spreadsheet -- and find a good orbit by trial and error using the gravitational fields of all the large bodies in the solar system.
-
Re:yeh, seems kinda trollish
It's fine with me if that eventually is RoR, but considering the much vaster PHP user base, wouldn't P5 be a better starting point?
Perl 5? We're talking of object-oriented, MVC-heavy thing here. Try doing object-oriented programming in Perl 5 for more than 10 seconds and you may notice it's not really that bright idea. Breeze to instantiate a class and use it, but as for implementing it, ugh...
Perl 6 of tomorrowyear has a very nice and clean object interface, kind of like Ruby is now, actually...
That said, Perl *does* have a really nice MVC framework out there. It's called Maypole, and would absolutely kill RoR dead if Perl's object syntax weren't so horrenduous and it wouldn't need million and one weird CPAN modules to run. I haven't used it much, but it seems like it has RoR's scaffolding features on steroids...
-
The best web dev framework you've never heard ofWell, for web development (God, do I now have to call this "RIA development"?) I found a diamond in the rough.
It turns out there's this Python-based application server/templating language called SkunkWeb (http://www.skunkweb.org/) which seems to be the Holy Grail for me of, well, a Python-based web framework that doesn't completely suck (Okay, I know 1995 and CGI was awesome and everything, but no one should be writing "print '<html><head>'..." statements within Python code to make web pages, and don't get me started on Zope.) And no, I'm not affiliated with the project or its developers.
I don't know about Ruby/Ruby on Rails, but I'd rather write in Python which, to me, has a more accessible syntax and a truly badass standard library. And doesn't make you want to jump blindfolded off of tall buildings.
Skunkweb lets you combine the best of Python and PHP -- you create real Python classes to do the heavy lifting/DB accesses/app logic (and you can unit test those separately) without the PHP spaghetti code mess, and then you use Skunkweb's refreshingly sane blend-of-HTML-and-Python template language (contrived example -- need a list of usernames? It's this easy)<:import foo:>
to tie it all together. The win is that this way you can separate logic (standalone Python modules) from presentation (templated HTML/Python) in a much cleaner manner than other web development frameworks.
<table>
<:for `foo.Users.getSome()` u:>
<tr><td><:val `u.username`:></td></tr>
<:/for:>
</table>
In addition, it was built from the ground up for scalability (ok, the application server itself is probably slower than Apache/PHP, but I don't notice the difference, and you can use psyco or other methods to speed things up) and has caching and db connection pooling and other performance-oriented features built in.
I've been doing web development for nearly a decade, and Skunkweb has recently been my best-kept secret and a big competitive advantage. It's at the core of two companies I'm starting (one of which is a comprehensive online SAT prep course and is already profitable, the other which is earlier stage but angel-funded) It lends itself to clean and quick development and if it didn't have the stupid name (good luck convincing your boss to bet the farm on something with "skunk" in the name) it would have taken over the world by now.
Anyway, you heard it here first, folks. If anyone else out there is using Skunk, drop me a line (houston at mit.edu) because it would be nice to start a little community.
-fren -
Re:Unix is not the FutureBut what would the trojan do? Would it simply run a program just to crash it? That seems kind of pointless. The point isn't that threads don't die. It's that it's impossible for an attacker to use this in any meaningful way.
I was contrasting the current, typical use of Java as an application programming language against its hypothetical use in a Java VM as OS context. In a typical contempary scenario, finding a java 'sploit avails the cracker naught, since he then still has to crack the OS. Contrariwise, on a system where the OS is unified with the Java VM, there is no limit to the damage an exploit can do.
To summarise: one of the main reasons Java is so secure is that it has the system OS as a second line of defence. Unify OS and VM and that advantage is lost.
It HAS been tested in earnest. Applets are an example of an area where the Java security model is in effect.
On the one hand, applets are a very specific and specialised case. The malware artist not only ha t get past java, he also needs to defeat any browser security measures and there is still the OS to contend with.
On the other, current JVMs rely, as you yourself said, upon the OS for a lot of facilities. When those features are migrated into the VM, the complexity increases, and there's no guarantee that security is maintained.
Whoa! Hold up there! The protection is not in the language. It's in the platform. The Java Language is independent from its platform, and provides very little in the way of security features.
And yet I seem to recall you saying that "it is much easier to add this protection in Java than in any other langauge". Perhaps you meant to say that "the Java RTE has features that enable programs which compile into Java bytecode to better implement such protection".
We can use the term "Java" loosely (as we have been) or we can be precise. I don't mind which as long as we both follow the same rules.
If Java is the OS, it WOULD be handling security.
You mean "if the Java Run Time Engine is the OS". We're being precise, remember?
You can have an OS *never* have a root exploit, or even a critical exploit. Java can do that.
Never happen in the real world. That's my prediction.
Think, with all the J2EE servers running out there, and all the webbrowsers with Java installed, how many have experienced major flaws in the Java architecture or VM? The answer is a resounding ONE.
Yes. For a JVM insulated from the bare metal by at least two levels of abstraction, that's not bad going. It's still unproven as a full on, standalone operating system.
And Java's is secure even if the programmer DOESN'T check buffer lengths. "ArrayOutOfBoundsException: Element 100002 does not exist."
You mean the Java Runtime Environment, surely?
As I said above, we're not talking about the Java Language. We're talking about the Java Platform. You have to make a distinction between the two or you'll fall into the same trap you just did.
:-)Let he who is without sin cast the first stone, that's what I say
:PBut I'll tell ya what: Let's conduct the remainder of this in terms of Perl 6 and Parrot. I'm a Perl fan, sh that'll factor out my admitted bias against Java, and since all you were originally arguing for was managed code, Parrot should do as well as the JVM. Also, I can write "Perl" to mean "Perl" and "Parrot" to mean "Parrot". Does that sound fair?
-
Beginning Perl by Simon Cozens
I am learning Perl using Beginning Perl
And I am really satisfied with it, it's free, it's comprehensive and it's author is a skilled Perl hacker.
I would like to know, what more does Learning Perl have to offer? (For one it's not free!)
If it's depth, I plan to use the perldoc and perlmonks.org for the depth. And beginning perl just for the big picture (not that it doesn't offer depth, it does to a great degree).
-
Re:Little Point Learning Perl If Not Already LearnFrom what I've been hearing from hiring managers, the jobs for Perl are largely going unfilled, because since the dot-bomb, many good Perl hackers jumped ship early and are now underemployed in crappy other-language jobs.
So, learning Perl today may actually increase your job potential. New startups are happening all the time, including projects that are shifting away from Java and dot-net, and toward real workable open-source solutions.
-
yep
-
Funny you should mention that.
I've just been employed by a group of academics to come up with something like this over the next 6 months or so. My requirements were open source, perl and apache based with the flexibility to server copyright and draft material to group members, and public domain/less sensitive stuff to anyone. I'm now using Maypole and judicious use of the Template Toolkit, I'm hoping to open source it at the end, and get some employment in my field of choice using it as leverage too.
-
Chip got a new job *before* he left HMS
See here. Basically, before this all started, Chip got tabbed to be lead Perl 6 developer, and got a paying job to do it. He then decides to burn his bridges at HMS by writing a big F-U letter on his way out the door. If he wanted to leave, he just should have said so and not brought this down on himself by provoking a necessary response from the company.
-
Re:Silly OSI vs FSF marketing fud
I am comfortable using both though I prefer GPL.
There's a third, but seldom mentioned, alternative: Artistic License 2.0, which should ship with Perl6 alongside GPL.I've already taken to using it; AL2.0 is beta, but charming and unobtrusive nevertheless.
-
Re:Other licenses are becoming more commonTwo wrong posts finally make a right.
Perl is either GPL'd or covered by Wall's Artistic License.
-
Re:Other licenses are becoming more common
-
It saysEeeh.. Slashdotted. What's it say?
skip to: page content | links on this page | site navigation | footer (site information)
We need your support - Please mirror this site. Donate Now.
Welcome to GeeksUnite.net -->
About the Site Content Who is Chip? About A & C Open Source perl Parrot
CONTRIBUTE NOW to the Chip Salzenberg Defense Fund...
MIRROR THIS SITE
Spread the word. This can be any one of us.
To email us the url, get the latest info or just say "Hi" info@geeksunite.net
Come back frequently for the latest site and case updates.
Last updated 6/29/2005.Join our mailing list info@geeksunite.net
PA Code by Case Subject Search & Seizure
Return of Property
Misappropriation
Trade Secrets
Harvesting/Open Proxies
Related LinkCase Documents The OMITTED Letter The Search Warrant Plaintiff DefendantInterveners
Timeline of EventsPlease Contribute. Thank you for spending time on our site. It will be updated frequently. Please come back.
None of the views expressed in the website constitute the views of the Armstrong & Carosella PC law firm, or any
principals or employees, or agents or experts who have been retained in any capacity in connection with the case.
Information on this site is for educational purposes. Case Caption: Health Market Science, Inc. v Charles H. Salzenberg, Jr..
Court of Common Pleas of Montgomery County, Pennsylvania. Case Number: 05-11918
Chip Salzenberg Defense Fund
Please mirror this site. Learn from it and protect yourself.
We need your financial assistance to continue the fight.
Donate Now.
OMITTED from the Company's Pleadings,
UN-INVESTIGATED by the Detective,
it caused IMMEDIATE ACTION by the CEO,
READ the LETTER that started it all!Why 23 million telecommuters need to be worried about this case
Or: How your life can land into the "wrong hands".Twenty-three million telecommuters (IATC 2003) access their employer's network from home. Some use their own personal computers, while others use a computer their employer assigned to them by their employer. Some bring their laptop to and from work. Do you? Should a dispute arise between you and your employer, you may be exposed to the legal tactics and strategies used by Chip's employer.
The company can file a police report, show logs of your network activity, convince the often insufficiently sophisticated police that your behavior is suspicious and claim they are in "fear" of the loss of their property and/or trade secrets and potentially millions of dollars of profits . If you're a programmer, that is your job description permits you to "appropriate" huge source code downloads with only even less uploads - exposing you to a "claim" of theft of your company's confidential and proprietary information and trade secrets . All the while you are having an exchage with the CEO by -
Re:Most comments to this review
-
Re:Syntax preferences are not facts.
Yes, we need more Rails, a Pike on Rails would be excellent. Hmmm, I wonder how close Maypole is to a Perl on Rails.
-
Rails posts prediction ...
I predict there will be basically two categories of posts about Rails.
Either, one, that Rails is so amazing that after you use it sex seems laughably trivial by comparison, even and especially you count the production value -- one can, after all, only have one child (on average) using sex, but with Rails, dude, I HAD TEN.
Or, two, that Rails is no big deal, it's just another MVC re-think, heck I rolled one of those myself one afternoon a coupla years back, yeah it ruled but, you know, I'm really into that Java thing now. Besides, Rails is no good for BIG projects, for that you need Hibernate and a crane.
So I'll post one for the middle-of-the-road. Rails rules. I love it. I've reimplemented, in a week-and-a-half, a fairly large application that took me two months to do with Python. It's not a fair comparison because with Python I used Webware but did everything, like user management and logging, with no starting point, and also the first time around I wasn't as familiar with the problem domain.
With Rails I used the Salted Hash Login Generator which got the basics of my user login and management done in one fell swoop, an hour or two of work. I also re-used the view code from the Python app.
But the rest of it was fun. I enjoyed it. Things were done quickly and the API is awesome. ActiveRecord is not Hibernate -- yes, Javapeople, we know, we know -- but it's good. It's really good and super easy. And while there's some magic going on behind the scenes with Rails, it's not hard to understand at all.
That said, yes, if you're an online payroll system for IBM, Rails won't cut it. There are flaws, but for day-to-day stuff, not too many. It's updated very frequently, too.
My only complaint is the ubermensch of Rails, Dave Heinemeier, who, while smart, is also all too aware of it, and frequently shoots his blog off about topics which go beyond Web frameworks and into areas of either glib tech-prejudice or, at times, more subtle see-how-smart-I-am dorkposts -- the most insufferable species of Geek.
Otherwise, I strongly encourage anyone to check Rails out. It's great and a *lot* of other frameworks in other languages could stand to pay attention to the innovations in Rails. These innovations aren't so much technical epiphanies, as they are the meeting of many good ideas in one place, along with enthusiastic support and a lot of glue. Ruby's fun, too.
Check out, also, the frameworks from other languages which are shamelessly stealing from Rails:
Subway (Python)
Catalyst (Perl)
-
And for the Perl folks out there...
If you're interested in cool web frameworks, but don't want to learn Ruby, you might be interested to know there is a similar framework available for Perl called Catalyst. It's very flexible but generally takes advantage of great database mappers like Class::DBI and template engines like Template Toolkit. Many cool things are ongoing in the Catalyst community, such as Class::DBI::Sweet, a new extension to Class::DBI providing very cool automatic joins (ala ActiveRecord) and object/resultset caching.
Catalyst can be found at catalyst.perl.org or on CPAN. -
Re:HTML and CSS? On Slashdot?
-
Re:HTML and CSS? On Slashdot?