Domain: rubyforge.org
Stories and comments across the archive that link to rubyforge.org.
Comments · 342
-
Alexandria
I'm surprised no one mentioned Alexandria yet: http://alexandria.rubyforge.org/
-
Re:Tell me one thing this brings to the table
It's just that it's a brand new group of people, not familiar with what is there, only familiar with what they know already or what there is buzz about, and they want to use that. These are ruby coders after all.
So you know these guys? Perhaps we are referring to a different group of individuals.
I know 3 of the sciruby developers well. I'd say each knows at least 3 languages fairly well (some combination of ruby, R, java, C/C++), and all are familiar with some range of scientific visualization packages. If you look at a lot of the sciruby packages, (say, statsample) most of the routines are implemented in java, C, and ruby. Speaking for myself (I work on sciruby), I've done significant projects in AVS, matlab, scipy/numpy, R, and PDL and worked with other ad-hoc visualization systems, and I've designed my own simple C++ numerical toolkit. I've done projects in ruby, java, C/C++, perl, and python (several of which are published), played around with a dozen programming languages, and I've done real work with another dozen visualization/science toolkits. We recognize that more experienced science/vis programmers exist and acknowledge the great toolkits already in existence--we just think ruby should have one, too.
These are ruby coders after all.
Most of the ruby programmers I know arrived at ruby after sampling a fair number of languages, and the ruby programmers I know stack up well against coders from any other language. Maybe that's just the domain I'm in.
only familiar with what they know already
doesn't this apply to everyone? [If we equate knowledge and familiarity]
-
Re:Non-story
The slowdown in commits to sciruby proper is due to the recent efforts on nmatrix (the subject of the story). The github commit history is easily accessible and shows a flurry of activity. Many projects associated with sciruby are also not housed directly under the sciruby name (e.g., rubyvis)
There are a million minor projects like this that similarly aren't newsworthy enough to discuss
... yet here we are...The lack of comparable scientific libraries is the primary reason many folks choose python over ruby. It's true that sciruby is young and doesn't yet compete with scipy/numpy, but the point is that it continues to pick up steam. A lot of folks who would rather code in ruby think this matters.
-
Re:Given the torment that foreign language class
I don't really like to pimp out my own software, but we're deep enough in the thread that I hope I don't step on anyone's toes. I have been writing a Japanese study tool called JLDrill http://jldrill.rubyforge.org/ Basically it is a spaced repetition drill program. Other programs like Anki are more flexible and better supported (and easier to install...), but JLDrill has some specific Japanese study tools that you might find helpful. If you like, give it a try. If you have any problems give me a shout.
Thank you! I'll check it out.
-
Re:Given the torment that foreign language class
Thank you, that makes a lot of sense. I just finished learning hiragana and katakana, and still practising reading/writing, but I'll try to start on the kanji as soon as possible - even though I expect it'll take me years to become anywhere near fluent
:)"Remembering the Kanji" by James Heisig is a useful method for learning kanji. You can download the first third of the book from the publisher as a pdf here. I personally disagree with the order of learning, but the technique is sound. He suggests learning English keywords for all the common kanji before learning Japanese. I don't think that's necessary. Learning it in the same order that Japanese students learn will allow you to read as you learn, which I have found more effective. Also, some of his English keywords are poor (i.e., the character does not commonly have that meaning). The keywords in the kanjidic project are better. You can look at them with the Rikaichan plugin in Firefox among other means.
My teacher insists on the polite forms (the course is sponsored by the company, and, obviously, they're mainly interested in business interactions), but I try to go beyond that - I expect reading as much as I can will help there.
In that case, I think your teacher is probably correct. If you are just a tourist, talking like an impolite child might cause some surprise, but nobody is likely to get seriously upset. In business it's a different matter. You really do need to be polite. Like you say, reading will help you a lot.
I don't really like to pimp out my own software, but we're deep enough in the thread that I hope I don't step on anyone's toes. I have been writing a Japanese study tool called JLDrill http://jldrill.rubyforge.org/ Basically it is a spaced repetition drill program. Other programs like Anki are more flexible and better supported (and easier to install...), but JLDrill has some specific Japanese study tools that you might find helpful. If you like, give it a try. If you have any problems give me a shout.
-
Re:I wish I could use it
you wouldn't do that, you'd show him the sqlite GUIs, like
http://sqlitebrowser.sourceforge.net/
http://sqliteadmin.orbmu2k.de/
http://www.razorsql.com/features/sqlite_gui.html
or even
http://rsqlitegui.rubyforge.org/ -
Re:Mnemosyne / Super Memo
TFA is actually a little light on details, so I'll add a few more. But I am not a psychology researcher, so take my explanation with a sack of salt.
There are basically 3 separate issues that they are looking at with respect to learning.
One is spaced repetition. Spaced repetition is the idea that you forget things over time. The longer you go without recalling something, the higher the odds are that you will not be able to remember it when you try. However, if you remember something, the association will be stronger and the speed at which you forget it is lower (i.e., the drop from 90% recall to 80% recall will take more time). That speed is called the "forgetting curve". The shallower the curve, the less often you have to review something to rememer it. Software like Mnemosyne, Anki and SuperMemo try to time when you are likely to forget something so that you don't waste your time reviewing something that you aren't going to forget.
Another concept is spaced learning. This is different from spaced repetition. It turns out that the space between reviews is actually necessary for long term memory. If you memorize something and then wait for a long time, even if you forget it, you will make a stronger connection the *second* time you learn it. Spaced learning intentionally puts spaces between reviews with the intent that it creates a stronger memory (makes the forgetting curve shallower) the *next* time you learn it. In other words, you intentionally make it difficult to remember the second time around (as opposed to choosing a time when you are likely to remember it). The distinction between spaced repetition and spaced learning is fine but important, I think.
Finally there is interleaved learning. It turns out that time is not the only thing that causes you to forget. As you learn new things, the ability to recall old things gets worse. So if you learn A and that's all, you will forget it slower than if you learn A and then B. Learning B makes it difficult to recall A. You can use this to your advantage. Remember that with spaced learning, if you forget something, it is retained *better* the second time around. So if you learn A and B, and then return to A, you will remember A better than if you spent twice as long on A and then did B.
Basically spaced repetition programs that use SM2 algorithm are implementing spaced repetion. I will argue that they aren't making use of spaced learning, at least intentionally. When you initially try to remember something, you should space repetitions so that it is difficult to remember the item. One of the weaknesses of SM2 is that it doesn't really have any strategy for first learning the item (on the other hand, you are free to adopt your own strategies within the framework of the software). Specifically, there's no concept of getting an item correct and then waiting a short time and reviewing it again. It goes ahead and schedules it for a day or so later. Also, when you get an item wrong, you are back to square one, with the "difficulty" set at the same level it was at before you got it wrong. Spaced learning would suggest that at least the item will get less difficult every time you forget it. So I think there is considerable room for improvement.
SM2 also specifically does not implement interleaving. When learning new material (or even items that you forgot in the review) it would be rather interesting to have it introduce one new fact from 4 or 5 different quizes at a time. It would accellerate the speed at which you forget the item and provide opportunities for spaced learning faster (presuming there was support for spaced learning).
I'm actually the author of another spaced repetition program for studying Japanese, called JLDrill. I use a different algorithm, which I describe here: http://jldrill.rubyforge.org/Strategy.html I'm going to try to implement some of these other ideas in the near future.
-
geokit
I worked for a large location-based mobile / web startup. Pretty much every web request dealt with a lat / lng. We used geokit ( http://geokit.rubyforge.org/ ) and it worked great.
20k to move to a completely different platform over one trivial problem is just wrong.
-
Re:Isn't there a way...
Sup uses Xapian, it's pretty fast too.
-
Re:Except that...
A decent mail client will index your emails using a decent engine and keep it fast even with many emails.
Xapian, as used by the Sup email client, can blaze through 20 million documents in milliseconds.
-
Re:mac /= server
It's a shame people need all the features in Exchange. I use Sup, which since it indexes email using the Xapian engine, would probably take a few seconds to search through that size of emails.
It does take quite a bit of disk size (between 1 and 2 times the original data size), but what's a few hundred MBs on today's disk?
-
Re:Written by a writing style critique troll moron
Some good stuff there. Some crap. Overall I give myself a C+. As you are an anonymous coward, I don't suppose you'll ever see this. I'm not even sure why I'm responding to such a ridiculous comment. But I've always been happy to have people read and critique my code. Feel free.
-
Re:Not if the computer's Unix-ish
It's not just operating systems, if the application does reporting or comparisons involving date ranges it most likely will need to implement the Tz database which is available in many languages (ex. Ruby,
.NET.) -
Re:According to modulecounts... but then again...
The old rubyforge.org (based on GForge) had many of those features. rubygems.org (based on the gemcutter) is still rather new, and could use some more features (ranking would be nice).
-
Re:You have nothing to fear.
Having done this recently for a relatively complex Rails application, I can say that it wasn't terrible. Fortunately, if you're using Rails' migration facility, you have a record of all of the SQL definitions you've done. We ran into three trouble spots: MySQL views, the TRUNCATE command, and foreign key definitions which have different syntax in MySQL and Postgres. This meant that we had to change a few things (we wrapped views in this gem and foreign keys in this gem). Turns out the TRUNCATE calls were not necessary, so we ditched them.
The hardest part, for me, was getting used to psql, which is the Postgres equivalent to the mysql command-line utility. MySQL's commands are SQL-like, whereas Postgres' are all prefixed with a backslash to distinguish them from regular SQL. Postgres, as you'll discover, is much more picky than MySQL in some SQL queries. The HAVING clause, for instance, requires you to be very specific in Postgres, whereas MySQL just chugged along and made some (correct, in my case) assumptions. I have mixed feelings about the switch, but we needed the PostGIS geographical functionality which is sorely lacking (or, I should say, implemented poorly) in MySQL. I'll probably continue to use MySQL for my own personal projects... at least until Oracle destroys the project. -
Re:what ever happened to good old email?
> I have yet to find a mail client that will import and index that much mail without crashing.
-
if you don't mind the command line
Sup http://sup.rubyforge.org/ it is gmail like in that it uses tags instead of folders and it automatically indexes all the email using Xapian in the background making it small home google for your email.
-
You're Thinking About It Wrong
Unfortunately part of the Terms of Service of the Facebook API prevents storage of data received through the API on a remote source.
I never said to use the Facebook API.
For a mental exercise let's imagine (and really maybe Perl is the better choice here) that I made a Ruby gem called SocialWalker or something of the sort and basically I used mechanize to log into Facebook after getting the user's credentials. Then the application connects to my webservice that sends the latest selector strings (harvested from the latest Facebook interface by hand with SelectorGadget) and also Nokogiri to quickly scrape off all the information and date/time stamps. I think the pictures would be a different kind of effort but completely feasible.
At that point, the user could save it in some documented open social file format that any application can read ... it would probably be a tree directory with a bunch of XML files and images. Maybe they want to put that into Diaspora and I would have a way that the system would autopopulate their diaspora with this archived data? Maybe they want to do their own thing with it? Maybe I could spend time doing this for Facebook and MySpace and Friendster and whatever you send me a link to?
Yeah, I might not be able to spider your posts on your friends walls and maybe I won't be able to get some information and maybe the new system won't let you back timestamp things so that data has to be put in the comments on your new photo albums.
Maybe Google could be petitioned to create this system instead of some developer who prefers to get drunk on the weekends instead of liberating social network users? Google is the god of scraping and caching after all.
But it would look like nothing more than one user looking at all their history one last time ;) No API ToS violations needed. -
Re: Or Qt4-QtRuby
Or use Qt4-QtRuby.
require 'Qt4'
app = Qt::Application.new ARGV
button = Qt::PushButton.new '&Close Me'
Qt::Object.connect button, SIGNAL('clicked()'), button, SLOT( 'close()' )
button.show
app.exec -
Re:but I thought HTML was supposed to fix all that
He is having problems printing. In this case Java may be the best solution to the problem. Given a choice I really do prefure java to java script but that is just me.
In this case he was asking for the best browser to solve his problems.
I would suggest using Chrome since this seems like an Intranet app and not an Internet app.
To solve the printing issue I would suggest going with a PDF output. That will bypass all the issues with browser printing and will give the developer a good print out. Hey PDF really is a good solution for printing.
But yes there seems to me a lot of ways to skin this cat. You could write a Java app or applet. You could do a classic client server solution in any number of languages, you can do a browser based solution.
Since the author posted that he is writing in Rails he is probably committed to a web based solution. A popular but I feel over hyped solution. However if that is where his skills lie might I suggest that he look at http://www.rubyinside.com/prawn-ruby-pdf-library-987.html and http://ruby-pdf.rubyforge.org/pdf-writer/demos/index.html
Since this is a ticketing system for a shipping he may want to think about things like interfacing with RFID and barcode readers. Not to mention generating barcodes. -
Re:Stop using the Shell
I like Larry and the rest of the crew, but I think we can confidently say that Ruby is an evolution from Perl. It used to be that CPAN was a big advantage, but ruby gems have come along pretty well since then. And there's a lot to be said for the Rails framework, even more in 3.0 .
My experience is that the quality of ruby's implementation has a long way to go before it's comparable to perl's. Here is a bug report I filed back in 2007 -- still open, three years later. I've never experienced bugs like this in perl.
-
Re:We've had it for years. It's called Qt.
If C++ is really too fucking hard for you, you could always use the PyQt Python bindings, or the Ruby bindings.
If you really feel it's necessary to use XML to lay out your UIs, you can always create XML files using the same format as Qt Designer.
And you don't need to use HTTP for every possible network communication. Jesus, is that the only protocol that you idiots know?
-
Re:Irrelevant.
Lots of static resources are created using e.g. Interface Builder.
Sounds a bit like Qt Designer, which creates XML files which are then translated to C++, which can then be linked to other C++ programs...
Or, and this is key, to anything with Qt bindings.
I again don't see why we should be restricted to using Xcode, and even if we are, why we should be restricted to a single language within Xcode.
Additionally "application" on Mac OS X is actually a bundle, compiled program is only part of. Bundling of resources and external frameworks are pure Apple specific part having little to do with compiler or linker.
While true, the "bundle" is something that's existed since NextStep, and I very much doubt that Xcode is the only thing which can create such a bundle. In fact, I'm fairly certain Rawr can create them.
If only you hadn't you ignored technical point in GP...
Which one?
Calling me illiterate and accusing me of ignoring technical points is fine, if you actually point out my mistake. Otherwise, you're clearly trolling.
-
web servers to app servers
It seems that basic web sites made by uploading html and other files are going extinct, in favor of web apps like CMSs and blogs. As a result, the majority of the functionality provided by web servers like Apache is becoming unnecessary.
As an example, any web app which interfaces with Apache via Rackmiddleware needs only the enabling of mod_rack. Other than that, you don't need to touch apache2.conf. Apache basically just handles the sockets; the rest of its functionality goes unused.
-
Re:dumb question?
What you want is called Rack. Apache with mod_rack becomes just a simple request handler to interface with any Rack-able framework.
There are several other lighter-weight webservers which support Rack.
It's pretty clear that nearly all of Apache's features are becoming vestigial now that a simple, standardized interface to the web-app layer exists.
RIP, Apache. You were wonder in your time.
-
Re:And what other languages too?
Gems would be a godsend. I have a repository with 86 packages in it for one of my clients who runs a RoR app, most of those are gems. Most of them are easy to package thanks to gem2rpm, but there are a few which are a PITA and required me to patch the source, hack the spec file, or both in order to get them to install correctly. Even so, we end up losing half of the advantages of a modern packaging system since we need to re-build any updated versions ourselves.
-
Things I've used in the past:
Ditz for per-project tracking. It just sits there in your repository (which you should have). I used Git for a repository. This meant that the change that fixed a problem would also close the bug, making things much more closely tied than something like Trac could hope to be. (Ever wanted to know which branch still has a given bug open? Now you can.)
I've also used Ktimetracker, back when it was called Karm, to track billable hours. The advantage of a GUI/desktop time tracker, in addition to being KDE-based, is that it can do things like notice which desktop I'm on, notice when I become idle, and punchin/punchout with a global keystroke -- these kinds of things are more difficult (though not impossible) with a tool closer to Ditz.
I have not, however, used both of these at the same time.
-
Re:Conversation view != threads
The only other MUA (besides gmail) I have discovered that does it correctly is sup http://sup.rubyforge.org/
It's command line (which isn't a complete deal breaker for me, failure to render html or show inline images aside) but it stores all it's meta data (read, deleted etc) in it's own internal databases which are not reflected on your IMAP server (which IS a deal breaker for me).I've been tempted to start hacking on the source, and if it was written in a language I knew I'd have already done it.
-
Re:Have you looked at the features..
Wow, go-go-gadget misinformation. Mac OS X Server is BSD based, and I've had great success installing any open source project that I needed, using ports, fink, gems, or CPAN if what came with operating system didn't do what I needed.
Also, the vast majority of services available on OS X Server are open source, which Apple does contribute back. So if you don't like how the Server Admin tool works, you can be a r3@l l33t h4xx0r and edit the config files in vi or emacs and do it yourself.
As for the submitter's original question, there are a number of useful tools available for mass deployments of Macs across a network. Tools like radmind, LanRev, Apple's PackageMaker, InstaDMG, and Casper Suite all have varying degrees of management of machine images, image distribution, etc. Also consider at least downloading the PDFs Apple provides for their built in services to learn the ins and outs of their tools allow you to do and not do. You can even modify existing services to use more recent versions of projects that come with OS X if you're missing something or need to upgrade to a newer version for some reason (although this will likely make you have to freeze your OS version in place, or else future updates will probably overwrite your changes.)
Administration of a network of Macs falls somewhere in between an Active Directory environment and a roll your own Linux/BSD network. The client administration is great, but not as comprehensive as Active Directory. However, you still have the freedom to tinker with the services that come with OS X Server and borrow and add capabilities from open source. There are also many other forums out there that have a much lower troll count than what you'll find here, with many knowledgeable and helpful folks who will actually attempt to address and answer your question.
Because seriously, why go to Slashdot if not for the trolling? -
Re:GWT for Python?
you're looking for RubyJS. sadly, funding has not been forthcoming in order to carry RubyJS forward. the compiler is excellent; the insights into the technical issues behind dynamic language translation were very useful (even to python translator developers) - but martin ran out of time/money/enthusiasm due to the lack of interest shown, so he only got as far as creating HTML and Button for RWT (Ruby Web Toolkit).
-
Well done, Piston!
Nice to see that Piston finally gets the recognition it desserves!
-
Re:Huh?
Of course you could. But that is not what it is designed for, and that is not the way it normally works. There are already perfectly good front-ends for Ruby, so why would you want to re-invent the wheel? You even named two of them: GNOME and GTK+. There are also Windows front-ends for Ruby (IronRuby for
.NET comes to mind). Or, you can write a Web interface and run a Ruby server on your local machine... but local or not, that is still back-endI am not talking about web servers for fuck's sake! Graphical interfaces, you retarded broad! I meant like writing an interface for an application, a graphical interface like... like... like this bullshit:
http://fxtwitter.rubyforge.org/
See? Someone tossed a GUI on something using Ruby. It's like throwing words into a goddamn Cuisinart trying to communicate anything to you.
It is very interesting to me how you got that completely backward, even though I have explained it twice: GNOME is the interface, or front end. Ruby is the back end. GNOME handles user interaction, Ruby the main logic. At least, that is the way it was intended to be organized, and the way it is almost always used. If you want to do it the other way around, by all means do so. See you in a year or so.
I was trying to interpret your backwards fairy speak into regular words but it just wasn't working. I get it... but you CAN write a GTK app in the language "Ruby".
I just mentioned that it was helping Microsoft on its way downhill. And it does so indirectly as well as directly: Open Office runs on OS X, Linux, and Windows.
Somehow, despite running on all three platforms and being free and unprofitable for Sun, it's barely kicking like... 15% of the market? Wow! Impressive. They can't even give this shit away. What happens when Oracle decides that Ooo is a waste of time? Do you really think these projects come from the "community"?
I don't know a single person who has gone out and bought a copy of Word or Excel for years now. And that is just one example. Photoshop? Bleh. I use Xara for illustration and some photo editing, The Gimp for the rest. Admittedly, Xara is commercial software, but there is also and Open Source version available.
What corner of imaginationland do you live and work in? Do you work at an one of those little open source firms? I can't believe you're comparing The Gimp and Xara to Photoshop... you might have mastered using The Gimp to edit out your flat tire and manipulate your photos to make you look thinner, but it just isn't an industry standard. In industries like advertising and entertainment where appearance matters, people use real applications that cost money.
That 1% figure was only from one source; others estimate it closer to 5% or 6%.
Holy shit! So Mac OS X literally crawled out of the mud from a failed company and ran over venerable linux, which was the next big thing since like 1995? I guarantee the results are skewed because a lot of weekend warriors probably boot into linux occasionally, then have to reboot into Windows whenever shit doesn't work because they don't have time to hang out on IRC and forums to burn a goddamn dvd or something.
Maybe it's never crashed (I have serious doubts about that), but applications do, and it is s--l--o--w. I hope you're having fun with it. And it's too bad that you did not take an hour or two to learn how to set up your Linux properly before trying to tweak the settings. Most people I know say "RTFM".
Slow? Why don't you benchmark that slowness using firefox on linux v. vista? How about you check out your opengl 2.1 performance on any graphics chip that isn't running nvidia's proprietary X solution? The problem is that there is no fucking manual... most of the crap in the linux system is undocumented. It's supported by the forums unle
-
Any relation to Francis Cianfrocca of Ruby fame?
Hmm... Francis Cianfrocca... Now where have I heard that name before...? Oh yes, a Francis Cianfrocca was the original author of the EventMachine library for Ruby, a reactor pattern library similar to Python's Twisted. The library is seeing wider and wider use in the Ruby community, given that it's fast, efficient, and has a well-designed API. Any relation, or is such a name rather more common than I expect? Or could he even be the same guy?
-
OpenDesigns.org
You can find free web designs at OpenDesigns.org. If you need a static web page using HTML/CSS, you can do a contract with one of those developers. You don't need a full-time HTML/CSS developer for this. On the other hand if you have are planning a large website, you will need more techniques than HTML/CSS. I.e. generate web pages using something like Webgen or a full blown web server using Apache, MySQL, Ruby/PHP/other, memcached,
... -
Re:Does it really
i've done event-driven vehicle simulators; i've clean-room network-reverse-engineered MSRPC and NT domains protocols; i've ported freedce to win32; i've added glib bindings to webkit and on top of that, ported a port of GWT to python even _more_ into python by adding DOM manipulation to pywebkitgtk.
in amongst all that mindless drivel of alphabet soup you should be getting a pretty clear picture that i'm not a stranger to complexity.
i've learned that if someone says "surely it doesn't have to be as complicated as all that", it's time to run like stink as fast as possible, out of the conversation and the room, and never look back.
browsers are effectively desktop technology within a desktop (and damn good at displaying widgets), except you're letting the web site dictate what "programs" are allowed to be "run" on your desktop^H^H^H^H^H^H^Hbrowser.
browsers are no longer "just HTML displayers", they are actually executing applications - _real_ applications - that in many instances happen to be written in javascript. GWT, Pyjamas and RubyJS should all hammer that point home.
with that in mind, why is it so hard to then imagine that, given that the "browser" is doing everything that you can also do with desktop widget UI toolkits, why is it so hard to appreciate that you need the full range of OS technology to support that desktop^H^H^H^H^H^H^H^Hbrowser technology?
-
Re:Bug Tracking is even worse than Version Control
One project that really seems like it is going in the right direction is Ditz, a decentralized issue tracker. Now that decentralized version control is becoming popular, there are a handful of decentralized issue trackers being built (other are cil, git-issues, and others whose names escape me). None seem to be very usable yet, and all are experimenting on what works best.
If you are looking for some kind of git-like breakthrough in bug tracking, that's where I would look.
-
Re:Project is on RubyForge...
...and, back online; here's the Ruby/ASP project which also hosts ruby-graphviz.
-
QT 4 bindings for Ruby
Here: https://rubyforge.org/frs/?group_id=181&release_id=23283
No need to stick with C++ and Java, the QT bindings for Ruby work like a charm.
-
Re:Show me some example code
PCA isn't terribly complicated if you use a library to take care of the matrix stuff. I rolled my own code in Ruby and it takes a bit under 40 lines (search for 'PCA'). Use the Ruby interface to the GNU Scientific Library and it's plenty fast.
-
Write Tests, Open Source, & use Rack
[test!]
A good test suite == "best practice to avoid digging custom holes you can't climb out of"
I work at a Rails shop too and, when I/we need to do something highly custom, we create it as a gem (or a Rails plugin) and post it somewhere incase someone else finds it useful. None of the plugins/gems I've released have required any maintenance to speak of, unless I've wanted to add additional features.
Be sure to write tests for your customizations (gem/plugin)! This will make it really easy to discover if your plugin no longer works for the next version of Rails/ActiveRecord/whatever it is you're extending.
[open source!]
If your changes might help other developers (they're not very, very specific to your product), open source them as a gem and let people know how to use it.
Not only can others benefit from your changes, but they can commit back too! Put the gem up on github[1], as it's the current de facto standard home for such things.
[rack it up!]
If you really need crazy performance out of Rails, look into using Rack[2]. Rails 2.3 (currently Rails Edge, will be released this month) *finally* uses Rack. Something like Rails Metal[3] makes it easy to return directly from Rack, letting you *highly* optimize certain requests. This is like rewriting some of your Ruby as C extensions to speed it up - Rack is really easy to use.
Good luck!
[1]: http://github.com/
[2]: http://rack.rubyforge.org/
[3]: http://weblog.rubyonrails.org/2008/12/17/introducing-rails-metal -
Re:One of several anti-cloud arguments
> I run a hosting company flogging unfashionable servers
And you provide a RubyForge mirror - many thanks for that!
-
Re:Serve Documentation from GitTorrent
Using sqlite would probably not work very well.
For issue tracking, a better example would be ditz, which stores issues as plain text. YAML, actually, but close enough. Thus, rather than thinking about this whole separate layer of SQL transactions, you deal with changes to the bug tracker with the same tools you use for managing the code.
For instance, rather than Trac's retarded behavior of refusing to let you modify an issue when someone else already has (and refusing to let you see their changes without opening a new tab), you'd let Git try to merge them, and fix it manually if necessary.
PHP would not be a good idea, either, unless it was very well secured -- you'd probably want static files for your wiki, or a safer templating language (Markdown, etc). In fact, no need to make it a wiki -- again, just keep it flat, and use git as the mechanism for distributing changes.
-
Re:RubyJS
-
Re:RubyJS
-
RubyJS
-
RubyJS
-
Re:rrdtool.
gltail http://rubyforge.org/projects/gltail/ cute
-
Re:go with Perforce
The only thing distinguishing the commercial VCS tools now is their integration with the likes of project management and issue tracking tools
And it's my guess that Ditz will change all of that, when it's mature enough to actually replace the existing tools.
It already has one feature I haven't found anywhere else. Not that it doesn't exist, but that I doubt it could be done this well:
Since Ditz is stored as simple text files inside git (or bzr, or whatever, even SVN if you like), this means that changes to the Ditz repository follow development. Which means that your ticket workflow automatically matches your development workflow.
It means that, for example, it's possible for a ticket to be marked resolved, but only within a given branch. The statement claiming the bug is fixed would follow the fix itself.
Which means that you get (for free!) a comprehensive list of new features in a given release, a comprehensive list of known bugs, even a kind of poor-man's roadmap. And you get this information simply by tagging the release, no need to mess with whatever your issue tracker calls "milestones" or "versions" (separate concepts in Trac, for some reason).
-
Re:future of perl?
myself I think that it still looks like noise different noise from Perl5 but still hard to read and to maintain.
One of the features of Perl6 that I really like is custom syntax. That helps a lot.
I like a lot of Ruby syntax, some of it Perl-inspired -- the optional brackets are beautiful. I like Python's indentation, and if I could, I'd probably be using Lazibi in Ruby. I like Javascript's object notation, and its treating of hashes as objects.
A lot of these, though, are mostly cosmetic. Certainly it's possible to abuse things, but by making the syntax separate, it means we can stop arguing about what syntax makes a good language, and start focusing on other features.
For beginners, there's Python,
I don't know, I've yet to see an environment beat Try Ruby for sheer beginner accessibility.
-
Re:Sometimes the correct answer is the simplest