Slashdot Mirror


User: zorander

zorander's activity in the archive.

Stories
0
Comments
305
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 305

  1. Re:Rails, great for those fed up with J2EE. on Ajax On Rails · · Score: 4, Informative

    Enterprise software is a different game. Rails is pretty all around terrible at integrating with non-rails-intended database schemas which are plentiful in any enterprise situation.

    I'm going to overlook the fact that a flexible caching mechanism has been in place since pre-snowdevil (maybe february) and transaction support was added at some point before the last time I worked with rails (late april). Keep in mind that it's still pre-1.0 and beta and not yet feature-complete. Criticizing it for a lack of features it supports, though, is in poor taste.

    Furthermore, almost all rails development at this point has been executed using very small (5 people) core teams. J2EE supports large scale development because it was designed for it. Rails was designed to let a relatively small number of people write an agile application using the set of paradigms which rails was built on. Coming at it from an "I use java in the enterprise and couldn't plug rails in its place tomorrow" is a little bit unfair, because in the same sense, I couldn't just drop J2EE onto my own desktop and start developing with it tomorrow. (Not to mention that my boss would not even begin to authorize such an expenditure for one developer on one product).

    I see rails more as a contender to PHP than to J2EE. J2EE and rails are not really comparable in the same market. Sure, rails beats the crap out of J2EE when you've got 1-3 developers on the project, and inversely, when there's more than 10, J2EE has a clear advantage. Coming from java, you're likely to miss many of the benefits of metaprogramming in rails. Even coming from python (a somewhat similar language to ruby), I was a bit startled at some of the techniques being used.

    Your project might have failed, but I'm not sure it was completely rails that caused it. AR is very easily extensible (in a matter of hours, usually) to do all sorts of more enterprise-java-like things. Ruby's dynamic messaging and open classes makes that a much simpler affair than it would be in java. Why didn't you extend it to meet your needs? Also, how did you miss the fact that caching and transactions have been there for a while? Were you trying to shoehorn rails onto an old schema? Did you have prior ruby programming experience or were you learning as you went? Did you have prior experience in a dynamically typed language writing an app of similar complexity? Nothing is going to make the solution of a hard problem easy. Some things can make it more pleasant, if used correctly.

  2. This works for me.. on Writing Down Passwords? · · Score: 1

    I have a few passwords that I use everywhere with variations. I write down the variations. For instance, schoolpass! means my school password followed by an exclamation point. workpassnosym means work pass with symbols removed (for when non-alnum chars are disallowed), etc. It's always fairly obvious looking at it what i mean. I have a few to work from that I've been using for a long time (and are sufficiently unguessable) and just go from there.

  3. Re:VoIP on planes on Wi-Fi Coming on U.S. Domestic Flights · · Score: 2, Insightful

    Access to version control/searchable hyperlinked documentation/build servers isn't important? How many corporate development architectures fit onto a laptop?

    He said it made him more productive. It does. Rooting around on my hard drive for ADC docs is much more time consuming than typing into google or a search box. What about that library you didn't think you needed the docs for because you weren't using it directly?

    Now that I'm used to having the internet and google as a resource at work when writing code, it's harder to do it the old fashioned way. There's no reason to anymore. Once you've built a development methodology, messing with it by removing internet access is a *bad idea* and likely to introduce bugs and inconsistencies.

  4. Re:It makes sense though... on Apple Switching to Intel · · Score: 1

    > they won't win against Linux; not without available software,
    > which they won't get without an installed base

    Huh? On their overpriced, underperforming PPC they are the world's largest unix vendor. What makes you think that that will change? The App package format can support multiple architectures (at least the directory format suggests so) and even if it doesn't, binaries for apple/x86 could find a new home there. Xcode will build for both platforms in a single click and legacy software will be run (and can be tested) in emulation.

    It will require *at most* a rebuild. Old software will run, slowly, until that rebuild happens. Guess what--they demanded a much more comprehensive set of changes from OS9-OSX and they didn't go under. This will be a much simpler (and more user-transparent) transition than that.

    With the performance kick from x86, I wouldn't be surprised if the emulated PPC architecture was only negligibly slower than the computer the user is upgrading from. Dynamic recompilation and virtual machines have leapt forward since 2000 when OSX came out with the TrueBlue environment (and its requisite 68000 emulation). I wouldn't be too concerned about it.

    With those points covered, what were you getting at?

  5. Re:Editors! Context! on Konqueror Passes the Acid2 Test Too · · Score: 1

    This site is of a technical nature and the articles may assume some technical knowledge. Any web developer who doesn't have his head stuck in a hole in the ground knows what Acid2 is and why it's important. (This embedded systems developer does, too--read a technical blog sometime, you might learn something. The 37signals folks have good ones. Try them first).

    Slashdot has extensively covered the apple patches/khtml/webcore controversy and shouldn't have to reexplain it every time something tangentially related has come up. Did you search the archives? Google? Seriously, you can't present technical information without expecting the reader to have some background information. The abstract would be 500 words long if they took the time to explain all of that. Whether that would be good or not is up for debate, but it's not what slashdot has ever done.

    Acid2 and is no more relevant to konqueror than to firefox or ie. Why should konqueror people understand it any more? Stop talking out of your ass and look it up.

  6. Re:Their own fault.. on A Coffeeshop's Weekends Without Wi-Fi · · Score: 1

    Oh noes! Wouldn't want to screw them!

    Seriously. The company doesn't care if you're ethical or not. To keep the company alive, it has to make a profit. They don't have the money or time to take the time to discern ethical from unethical wireless users. Do you know how much coffee you must sell in a day to pay rent in any large city? If they're not moving it, then they need to do something about it. Since a significant amount of their wireless users were 'unethical', it's probably the case that few of them were 'ethical'and they're much better off opening up the space for people just there for the coffee/atmosphere than wasting their money pleasing you and a few other 'ethical' wifi users.

  7. Re:Sound quality? on Sirius in Negotiations With Apple · · Score: 1

    If both aren't wired into the line-in on the head unit then there's no basis for comparison. For all we know, we're comparing the quality of your FM-rebroadcasters in your anecdote.

    My father has xm in his truck. Through headphones, it's great. It's only so-so when coupled through the FM radio. I am considering getting Sat-radio in my car, especially as I'll be travelling a bit by car for work in the coming months. So long as the stream isn't skipping, fidelity should be fine--it's digital, you know.

  8. Re:My 1978 Mini gets over 55 mpg on Hybrid Drivers Provide Real-World Mileage Data · · Score: 1

    Not married and a student. When parking spaces are $75/month I can hardly afford one car, much less two. The types of vehicles that appeal to me as a compromise are japanese car-based SUV's. They're only 2-3mpg worse than cars in mileage (22/27 is not uncommon) but can carry a lot more stuff than even a wagon.

  9. Re:My 1978 Mini gets over 55 mpg on Hybrid Drivers Provide Real-World Mileage Data · · Score: 1

    Can you get my keyboard rig and portable sound system in your mini along with three people? If so, I'm interested. Oh no? Well I must just be a greedy foolish American for looking at a larger car.

    Some Americans drive larger cars because they need to drag larger shit around frequently. Besides, things are farther apart here and we spend more time in our cars which lends us to demand more interior space and comfort. It's not because of some strange dysfunction of Americans that we like larger cars.

  10. More about this.. on CMU Professor's Rebuttal Against RIAA Propaganda · · Score: 2, Informative

    Dannenberg, while an idealogue, is a pretty smart guy. I just completed the course he mentioned in the letter, and while the discussion he inspires among students can be biased on the borderline of predatory, he's remarkably adept at inspiring this sort of discussion without leaving the realm of fact. Though I appreciate that, I don't generally appreciate the blood-frenzy that seems to envelop the more extreme liberals in the class whenever he brings these sorts of topics up.

    He has a tendency to stick some slides into the middle of his lecture that typically draw attention to some (invariably) republican inconsistency. He'd then encourage a five to ten minute discussion on the topic which spiralled progressively from merely anti-republican to borderline socialist, then finish his lecture on digital signal processing or whatever.

    The point he misses is that government intervention has also helped us to get into this mess. The RIAA and MPAA and their stranglehold on media were, in large part, caused by legislation that supported that control (most recently, the DMCA). I don't think we can trust the same government which brought this to be to do something about it. It's just not in the cards.

    I typically support a minimal government intervention in business, since congress is pretty much owned by business--the companies' buddies in congress will not allow a law to do any thing that hurts the bottom line for them. This pretty much guarantees that any changed to the DMCA will have a minimum positive effect for the consumer alongside a massive media impact. The spiral of lies continues.

    Perhaps the government should be as separate from the concerns of business as it is the church (W aside). After all, though the government has massive powers to help business, business strives to enslave as much as the sad mixture of the Roman Catholic church and the Roman givernment ever did. While the United States can and should make a healthy environment for business, and help protect the United States economy from foreign interests (just as we'd protect a church here from a rival religious faction overseas who intended to harm them), it shouldn't be used by big business to enslave the people. By drawing a line in the sand that grows both ways, the representation of the people can only increase, and most of us would agree that this is a good thing.

  11. Re:em.. on Azureus Decentralizes Bittorrent · · Score: 1

    Look at all the frontends to mlDonkey. No one cares that it's implemented in Ocaml underneath. The frontends are written in everything from python to objective-C (Poisoned) and IMHO are more usable/featureful than a lot of one-language, one-piece P2P apps (limewire and kazaa, for example, which are ungodly slow).

    Have you ever designed a three-tier application? The boundaries tend to fall right into place and saves a lot of development time. Having two (or three) components that talk along a clean, concise interface is not a difficult or overcomplicated way to program. If you use some sort of packaged IPC mechanism, then it's even cleaner.

    wxPython and SWT are awfully similar in design and API. Why should it take any longer to write the same interface in either of them? I'd expect the python one to be faster to write since dynamic typing and a terser code format mean less work for the developer. If you follow MVC, the view code should be quite small anyhow. I don't see your point.

  12. Re:em.. on Azureus Decentralizes Bittorrent · · Score: 1

    I know at least one major player in the financial world that does *all* internal coding in C (and some C++). It's not as rare as you think. They're a very, very performance conscious. company. When I interviewed with them, I spend two hours discussing details of struct packing, macros vs. inlining, how templates/virtuals are implemented in c++, etc. Java/C# are not all there is to this game.

    I compared wxPython and Swing and you refuted with two examples of SWT apps (Eclipse, Azureus). I wasn't talking about SWT (which is, designwise, extremely similar to wx and should be comparably good).

    The memory footprint kept java out of an embedded application where python is now excelling. In retrospect, I'm glad we went with python, but we had performance concerns at the time and were considering java. I wouldn't call it a "red herring". We didn't have the cash for a proper Micro Edition install when the project started, so Python it was.

    I to prefer ruby, but there are, as of yet, no particularly good GUI options for it, so I was using python as an example. If you're using ruby and haven't checked out rails, please do. It's quite a trip. Much of my work now has shifted into rails (The embedded systems company decided it was time for a real internet presence/online store) and I'm the one versatile enough to do it, so now I get to play with rails)

    Read my comment earlier in the thread about how a P2P client is both a server (high latency, high throughput) and a user interface (low latency, low throughput) and how unless a language is around that can support both sides well, it should be split into two pieces around that boundary.

    wxPython installs with a simple installer binary on Mac OS X and Windows. So does python--Yes this is another dependency, but you can use py2exe on windows and bundlebuilder/distutils on Mac OS to get a good package that depends on *nothing* and carries the wx Libs onboard. The only system that has the issues you describe is Linux, which to be fair, has trouble packaging *anything*.

  13. Re:em.. on Azureus Decentralizes Bittorrent · · Score: 1

    So use a Java backend to do the network talking and a lighter-weight (native?) frontent, sort of like the eDonkey model--where you have a locally running eDonkey server that the native (and responsive) client connects to.

    You made the argument for it, you just missed the conclusion. The purpose of the user interface is to interface with the user. Responsiveness is key. I don't want to wait for the visual feedback of a button push regardless of whether under the hood, my program is a 'server' or not.

    P2P filesharing is high throughput high latency, but Azureus is more than that. It's a user interface to the Bittorrent network, as well as being a server on it. This makes a strong case for viewing the application in two decoupled pieces that communicate through some sort of IPC.

  14. Re:This is not news on iMacs Freshened with 2.0 GHz G5, Bluetooth, WiFi · · Score: 1

    G4-G5 is an architecture change, if nothing else, from 32 to 64 bit. It's much more than a processor bump of 166Mhz or whatever they tacked on this time around. It means a new series of powerbooks based on different hardware. This doesn't happen on a fixed cycle and hasn't happened for a long time. Besides that, a lot more people are waiting for the powerbooks to hit G5 than for a routine, minor bump in processor speed.

    I'm going to assume that your assertion that tiger 'made optional features standard' is a weak attempt at trolling. There was no 'optional' version of spotlight, CoreImage, Safari RSS, CoreData, or Dashboard (arguable). Apple only updates the OS every 12-18 months (whereas they bump a product line by minor amounts much more often).

    Is longhorn worth a slashdot article? After this long, I hope so. Likewise, there are new features there and it is a major release.

  15. Re:So skip the article, and stop fucking whining on iMacs Freshened with 2.0 GHz G5, Bluetooth, WiFi · · Score: 1

    Is wanting to improve the quality of a forum I frequent by giving feedback merely an expression of my "wonderful glory"? I don't think so. I gave several objective reasons as to why it is not news (i.e. the updates are routine and minor). It's a waste of space.

    I should know better than to respond to AC's...

  16. Re:em.. on Azureus Decentralizes Bittorrent · · Score: 1

    I have written moderately large graphical python applications and they're anything but pokey. In my experience, wxPython is much more responsive than swing on the same machine. This even feels true on the mac, which is bizarre since Apple has supposedly put so much into the java vm. I realize that benchmarks with regard to throughput and java show it to be absolutely faster, but if it doesn't provide a better user experience, what's the point?

    I can't imagine the project that I'd choose to use java on. It seems that in the absence of anything else, C# is at least a more well designed language that does similar things. More likely, I'd code user interaction/business logic in a lightweight scripting language and build the low-level, performance critical parts in ANSI-C. It's a lot easier to write portable C when you're only implementing a few performance-critical functions than when you're trying to build a whole application (think GUI, sockets, etc.) This methodology hasn't caused me to shoot myself in the foot yet.

    Java should be used where it does a reasonably good job--servers. Java is a monster when it comes to throughput but only so-so on latency, so why use it in a low-throughput, low-latency situation?

    Can anyone explain to me the memory footprint? Baseline for a java runtime environment and hello, world is about 6-8 times what python takes to do the same? Actually, it's more than some medium-sized python projects I've worked on. What gives?

    I like how you criticize pyGTK although you haven't used it. Actually, you probably have used it, and couldn't tell the difference between pyGTK and GTK in C--I know I can't.

  17. Re:A step in the right direction... on Azureus Decentralizes Bittorrent · · Score: 1

    Do you understand the technical implications of what you suggest? The architecture of Gnutella/eMule/etc. is nothing at all like the architecture of bittorrent. If you have a way to merge them in mind, then by all means share. I'm interested to hear it, but just asserting a demand for something that appears technically unfeasible while passing it off as trivial in context is probably not such a good idea.

  18. This is not news on iMacs Freshened with 2.0 GHz G5, Bluetooth, WiFi · · Score: 2, Interesting

    News is "Apple releases G5 Powerbook" or "Apple releases new operating system" not "Apple bumps the processor speed and makes a few optional features standard equipment". I don't get it.

    Yes I care. I'm an apple user and my powerbook is the item I own that gets the most use each day, but apple doing a routine feature bump (hint: every product line gets one every nine months) is the stuff of thinksecret and macrumours, not slashdot.

    Is this really 1/12 of the interesting news for the day? Is there no other article of value that could have been posted? Come on.

  19. Re:SomethingAwful proves it works on Annual Fee For Your Comment? · · Score: 2, Insightful

    Rather than attacking me for my membership to the site, why don't you respond to what I *said*--which is that it fosters a good, well-behaved community with good discussion.

    It's not like they ban you randomly, but if you're contributing rubbish, you'll be warned, probationed, then banned. There's a list of things that are 'bannable' it can change moderately frequently, but usually things are announced and the first few days after, if you do something bannable, then people will give you a friendly reminder that 'that's bannable now'. Pretty much, you have to try to be an asshole to get yourself banned. They don't just ban people because they want money when they sign up again--the constant threat of consequences is what keeps the forum fresh.

    I take it you've never been there? A Well moderated specialty forum is easy. Try a well-moderated forum called "General Bullshit".

    The $10 isn't a charge for community--it's a concession that if everyone pitches $10 in at the beginning, the site stays running and we have a better community (since people don't want to fuck up and pay again). It's worth it. Keep in mind that SA is funded by its memers and ad revenue only. It doesn't have OSDN behind it like slashdot does.

    Since when was entertainment not a real service? Do you berate people for paying to rent a movie?

  20. Re:SomethingAwful proves it works on Annual Fee For Your Comment? · · Score: 4, Interesting

    I was going to comment to say basically this. Yeah, SA attracts some 'unique' characters. You could say it's tasteless and unsavory, but it doesn't have trolls (that last), jokes/catch phrases don't get beaten into the ground (since using one that's been deemed 'old' will get you probation or a banning), and people generally don't talk in AOLspeak.

    There's a sense of cameraderie there and the forums are much more close-knit than say slashdot, where I seldom remember another poster by name. Because you stand to lose something real (your right to post or 10 dollars), you're more likely to behave, contribute, and get something out of the forum.

    All in all, I'd say that this is a good move. SA did this several years ago. When they moved to the payment system from being a free forum, users who didn't post comments lost their accounts and contributors kept them. This makes sense more in light of the 'one-time cost' model than a subscription one (a subscription for life saves you much more than $10 in the long run and is much more a liability to the owner). I know people who lost their accounts then. Years later, they don't care. Most of them payed the $10 and kept on lurking. If anyone was bitter, it didn't kill the forum.

    Now if we could only figure out how to keep these annoying as fuck highschoolers out...then we'd really have it figured out.

  21. Re:The ? operator on A Review of GCC 4.0 · · Score: 1

    Yes. So do I. That's why I write code in ruby or python.

    I wish that people would stop trying to make C something it's not by adding shortcuts and fancy operators. If you really need it, write yourself a preprocessor, compile, and build it as part of your build cycle. It's not that difficult to do, especially with the help of a scripting language.

    C is meant to be fast and standardized. Anything that impedes those goals should be avoided. This included.

    You'd probably like ruby--it's good at making really pretty, terse, readable code. Give it a look sometime.

  22. Re:Changes to the lists? on Load List Values for Improved Efficiency · · Score: 1

    class Category 'parent IS NULL')
    end

    before_save :invalidate_root_cache
    def invalidate_root_cache
    @@root_cache = nil
    end
    end

    Being that that was a lot of java code, this is an example in rails. before_save marks a method that should be framework-invoked before commiting a change to the database on the categories table (which is introspected from the 'Category' class name, but can of course be overridden). This caches the category list and expires it whenever it may have changed.

    This can of course be made much more elaborate. I'm sure that java code is doing more, being that there's so much of it. Is there a reason why a simpler solution to the problem is unfit? This sort of caching is safe and easy to implement across a system on common queries.

    Of course, there's also memcached which provides the same effect without writing a line of code. Am I missing something?

  23. Re:Not a cron replacement, a init replacement on Does launchd Beat cron? · · Score: 1

    I just had another thought on your algorithm that actually made my point better. If there's a cyclic dependency, what happens? This is ususally user error, but I'd imagine it should be reported/logged as such. Using a graph representation, detecting a cycle is *easy*. In yours, init hangs because not all tasks have been started, but the last n tasks can't start because they belong to a dependency cycle. Hangs at bootup aren't fun for sysadmins. Are there graceful ways out of this? I'm not sure. With the graph representation, you'd detect this right as init started, print a message, and probably drop into single user mode so the admin could fix the deps. The other way, you wouldn't know until it happened.

    I'm not trying to rub anything in. I just had that thought and felt like sharing. It helps illuminate exactly how interesting this problem is.

    By the way, the idea of using a dependency graph to serialize tasks wasn't mine. I read about it in "The Pragmatic Programmer" by Dave Thomas and Andy Hunt. I highly recommend it. They were talking about some transaction system or somesuch..I don't remember specifically, but it's the same essential problem as init.

  24. Re:Not a cron replacement, a init replacement on Does launchd Beat cron? · · Score: 1

    Using a graph algorithm to build the dependencies is equivalent to that, except you don't incur the cost of a linear search of all services for those that are 'free' but not started yet. Just build the graph, make a list, and execute it. The code will be simpler, more maintanable, and mess coupled than any sort of search of the actual data for scripts that are ready to load.

    You then only create the number of threads needed for the sequences (breadth of graph) and only do 'height of graph' steps per thread. Just because you don't "need" a real algorithm, doesn't mean that you shouldn't use one, just because a less efficient hack is possible.

  25. Re:Not a cron replacement, a init replacement on Does launchd Beat cron? · · Score: 1

    I've used gentoo init scripts. They do dependencies but AFAIK not concurrency. Dependency checking is old news. I'm talking about removing false time dependencies (if two daemons don't require one another, why should one start before the other?) Gentoo init scripts still start one at a time. Did you read my post?