Huh? I was using an Athlon 800 with 256MB of RAM and Mozilla 1.0 for Windows ran great on it (I just replaced this machine this morning with a brand new Athlon XP 2000+). The problem is that the XUL/Mozilla GUI in Linux is still not as fast - strike that, nowhere NEAR as fast as in Win32. I just don't know why, if it's Gtk+ cruft or what. Frankly, anything above a 500Mhz PIII era machine runs modern versions of Mozilla (1.0+) in subjectively fast time (i.e. you don't notice UI lagging). The Moz team needs to work out their UI performance problems on Linux (I haven't used Mozilla on Linux in upwards of 6 months, so I'm assuming it still has the same issues it used to).
Okay, the moderators are on crack today. Read the question - it's NOT a question about "where to put the buttons" (i.e. HCI/UI design) from a UI designer's perspective. The question is about proper development and coding practices (including design patterns more interesting and complex than just MVC) for building complex GUI apps, presumably from the perspective of a software developer working with a designer, or given a UI design that is already known to be good.
I think part of the reason such discussions seem to be lacking out there is that each GUI toolkit has its own way of conceiving of event-based GUI interaction, and separating the presentation of a GUI element from the logic that handles it. Thus there is no real standard set of design patterns for GUI implementation (there are tons of sites I found using Google on GUI "Design Patterns" which are basically just HCI best practices for communicating certain kinds of concepts). For example, Qt uses the signal-slot mechanism. wxWindows uses EVT_ macros to associate an event with an action method. These encourage different ways of structuring GUI code.
I am not saying it's impossible to come up with a set of rules of thumb for general GUI development and implementation in the same way that general design patterns for OO development exist to solve certain kinds of problems that are commonly encountered, but I'm doubtful they would be as useful as you would think.
Not quite true. Check out XMLTV. I think you might find that all the guide infrastructure in available in a nice, Free package. So given that much of the backend work has already been done, you just need a nice guide program to use XMLTV guide data (i.e. parse XMLTV's XML format) and implement the relatively simple logic of tracking shows and making sure to schedule recording of them.
I actually started working on this a bit for the excellent DScaler TV tuner card app (this is a Windows app), but I haven't gotten very far yet, mostly due to having lots of other more pressing projects, but I wrote some hack-job code to display current guide data in a simple box overlay drawn on top of the DScaler TV window. It really needs a much more comprehensive treatment than that, but the point is this is a couple of week project. If you are interested, get in touch.
Dude, try regular, moderate-to-intense cardiovascular exercise. I joined a gym about a year ago, and actually started going regularly (5-6 days a week) about 3 months ago. I try to do 35-45 minutes on a stairmaster or elliptical machine. Gives a nice, relatively easy to control workout that you can stick to. You will not only feel better physically and mentally, but if you are anything like me and suffer from anxiety attacks when you are under a lot of stress or are prone to losing your temper and uncontrollable rages, you will definitely feel better and be more even keeled.
I don't think exercise is a cure-all for serious mental disorders, but for a lot of us who have experienced common, moderate neuroses, a solid exercise regime will greatly reduce your symptoms. Then you won't need to curse people out all the time and smack them around (well, sometimes people deserve a little bit, and that's okay). I lead a much happier life this way, and I've lost weight and look better, leading me to get more dates with the ladies, and thus get laid more. Which makes me even more mellow. Life is great. And I still play half hour to an hour of games a day.
In fact, the biggest problem with a Tivo is the infamous "Wife Theft Factor", which occurs when your wife figures out how to use it, and decides that recording her shows over yours and axing your Season Passes because Sex In The City is in that time slot is just fine.
Disclaimer: I'm not married, but my girlfriend was living with me for over a year in which I had a Tivo in my living room.
Actually I use Robert Roebling's wxDesigner. Some people seem to think it's not that great, but I prefer it to tools I've used for other languages. Admittedly, there are a couple of strange widgets (wxNotebook comes to mind) that it refuses to show in WYSIWYG fashion as of a few versions ago, but pretty much everything I needed to do in a dialog layout tool, this does.
I generally dont mind stringing together all the dialogs, menus, etc. of a GUI app manually, at least in Python/wxPython, since it's so damned easy to do.
Agreed, I have thrown together VERY complex GUI applications in about a month with wxPython. I recommend it highly. You can even package Python apps as executables (unless you use annoying things like some of the Python CORBA ORBs which seem to not work with the freeze/whatever tools).
wxPython is definitely a superior language to VB for quick and dirty but powerful GUI development. Though I still find Python, like other weakly typed languages, gets REALLY unwieldy in large projects. You really start to MISS that all the parts of the system have a contract with each other (i.e. enforced typing in method calls). But hey, if you are in VB land right now, this won't bother you.
The DMCA does not on the face of it restrict fair use in any way. Nowhere will you find text in the DMCA that says "you may not perform any of the following acts [description of acts involved in fair use]". What you WILL find is restrictions on circumventing "copyright protection systems" (see sec. 1201 DMCA). Trafficking in circumvention devices or systems is illegal.
New products are now on the market which embed so-called "copyright protection systems". DVDs are the most famous example. Want to make your own edit or parody of the DVDs you own? Want to rip DVD audio into MP3 or some other computer-based format? Want to cut and paste material from some "protected e-book" document? Tough shit, you can't without violating the DMCA, if a company doesn't want you to, since they can claim pretty much anything is a copyright protection mechanism (including some pseudo-obfuscation bullshit like CSS on DVDs).
So while fair use isn't technically affected by the DMCA directly, in practice, the right to fair use has been abolished for digital materials.
Of course Apple isn't standing up for your rights on principle. A lot of people seem to have missed the fact that Apple is banking on positioning themselves as the hub of digital media devices in the home, a position IN OPPOSITION TO the set top box approach that Microsoft is taking. In order to succeed in the centralized digital device hub model, digital media needs to flow freely from device to device. If everything is encrypted, controlled, and we can't do anything with it, then nobody is going to want or need a hub for their digital media devices, and nobody will buy into the Apple strategy.
I think this has more to do with Apple's strategic position than with currying favor with users per se, but I'm sure they would like to be seen as more user friendly than other computer manufacturers, and this does fit in with that.
It's obvious that corporations exist to make money, but if we are successfully voting with our dollars, we will encourage PC manufacturers to give us the kind of open hardware and software we want. Granted, Debian will always be more Free than Mac OS, but that doesn't mean we ignore a position that an important company is taking that supports our stance on user rights and freedoms.
You make some good points - smagoun's methodology is a solution to a problem that doesn't have to exist, but in practice, it does exist in most companies and enterprise software being built today.
Also, your solution isn't quite well fleshed out enough for me to buy into whole hog. A pure meta-data model (sorry, I know that's not precise terminology, but I think I am using it in the same way you are using the term data dictionary) is well suited to data that you only need to take from a form field, stick into a particular DB table and field, and retrieve and display later.
If your application needs any particular logic to be based off of some fields, metadata models fail - you need semantic knowledge of field's meaning and associations in the application code.
Unfortunately, many enterprise applications have a lot of data they just need to shuffle around and pass along to somebody else farther downstream, and a lot of data they actually need for application manipulation. In my experience, if you try to handle complex data types with a data dictionary-style mechanism, your dictionary ends up with so many damned parameters it becomes unmanageable. If the data is handled in code, you will just have more code for complex data, and less code for passthrough or simple data.
Also, I should point out that in general, code generators keep data in MORE COMPACT form, not less compact - I believe that smagoun is referring to a build system that uses generated source code files as intermediates in the build process, not as verbose files that are to be edited manually. The advantage this provides is that you can get compiled code performance out of data manipulations that would otherwise require semi-interpreted performance if they actions are all determined at runtime (example - autogenerated externalization methods in Java vs. default object serialization - huge performance difference in performance critical apps).
Exactly. Political speech is one of the most protected forms of speech (yes, I know, it's fucking annoying that different forms of speech have different levels of protectection, but such is the case according to all of my friends in law school).
However, I should point out that though there is quite a bit of precedent and law that seems to protect parody fair use for copyrighted material, trademark use is less clear cut. See Copyright Law Section 107 "fair use of a copyrighted work...for purposes such as criticism or comment...is not an infrigement". Also see Campbell v. Acuff-Rose Music, Inc., 114 S.Ct. 1164, 127 L.Ed.2d 500 (1994)
for some precedent (this is the 2 Live Crew case on the Pretty Woman parody song).
HOWEVER, trademark usage is still subject to standards of dilution avoidance - if a parody is judged to be confusing or causing trademark value dilution, a court may rule against its use even for parody. The political speech trump card likely wins out every time, however, due to its special consideration within the law and jurisprudence.
I don't think he's a troll. Zernike polynomials are Jacobi polynomials (which I remember from college physics classes) used in optics systems. Google does a wonder of good for these things.
So my guess is the description of the work they are doing is accurate, and there probably is some kind of consistent damage patterns with LASIK, though some people may never notice them.
My aunt and uncle both had LASIK and they have complained about the halos at night and generally poor night vision that has resulted. Also the results aren't always perfect 20/20 in both eyes when things heal.
Well, the J2EE "platform" does provide some very useful services that are more than a library, and pieces of which define how your application is actually deployed and operated -- thus the need to run it in what is now called an "application server".
The parts that I think are useful of J2EE:
JNDI - Java Naming and Directory Interface. If you've built a large application that involves many parts that need to cooperate in some way with each other, you've faced the problem of trying to avoid hardcoding hostnames/ip addresses/port numbers/communication mechanisms/etc. JNDI is a good way to find services on a network, allowing them to be mobile and redeployable. Not anywhere near as good as JINI, which has unfortunately never caught on like it should have in the corporate world, but JNDI is decent.
JMS - The Java Messaging Service API is a decent wrapper API for queue-based and pub/sub messaging. This is a generally useful paradigm for networked applications that operates at a substantially higher level than mucking around with TCP or UDP packets directly. Applications can be interfaced over a JMS-compliant messaging system focused entirely on semantic content connection, you don't generally have to worry about deciphering packet level details, etc. A good timesaver. The weakness is that many real enterprise class messaging systems (TIB Rendezvous and Talarian for example) have lots of juicy features that fall outside of the lowest-common-denominator JMS API. These either require that you use some extensions to JMS provided by the vendor, or lots of configuration, or you use the vendor's non-JMS API in the end, having wasted effort with JMS. In other words, if you need the speed and power of TIB RV or Talarian, you'll need to stray outside of JMS to get it, but porting a JMS app to these powerful vendors when you are already using JMS is a true breeze and has saved me hundreds if not thousands of hours of time.
EJBs. These are a sometimes overhyped application development model. The real core of most application servers is an EJB container and deployment environment. EJBs provide declarative transaction management (i.e. set up transaction boundaries for method invocations that auto-commit database manipulations and auto-rollback in the case of failure). EJBs also CAN provide easier interfacing of the object/data layer of your application to a persistent database, but this depends greatly on how often and when you need access to that data. The EJB model makes it easy to make dumb mistakes in how you model your data, and to destroy application performance with slow DB access. At least it did early on when people took the EJB model as something to be used whole hog. These days most decent apps that use EJBs use entity beans sparingly for read-mostly application data, and use custom session beans for high throughput data-writing.
Theoretically simple load balancing and scalability. The EJB model and EJB-compliant app servers are supposed to make enterprise apps scalable by EJB clustering. This can sometimes work well. In other cases it does not. Unfortunately, my biggest criticism of the EJB model is that it was in NO WAY designed for distributed computing, and makes no attempt at the specification level to address how clustering of these resources should work, and how various kinds of work can be partitioned effectively in the EJB model. If you have real computationally intense or IO intense work to do, think very carefully about how it will be modelled before you get too caught up with EJBs.
I can't think of much else off the top of my head, and if none of this sounds useful to you, then you've probably never worked in the awful realm of enterprise software development, and you probably have no need for an application server.
Unfortunately, as your app gets complicated, and you need, most importantly, high performance, you tend to need vendor specific features. And so much is unspecified, and so much just won't work within the EJB framework, that you end up always doing SOMETHING outside the standards in any sufficiently large J2EE application. Weblogic has always been fairly egregious in offering lots of stuff outside the standard and not really encouraging you to do things the standard way.
The thing is though even with the wide array of things covered by the J2EE standard, there are so many vendor-specific tools and vendor-specific deployment descriptors and so on and so forth - there's always a lot to learn and minor changes (a few lines of code and several XML configuration files here and there) to get things up and running on a new vendor's J2EE app server.
My personal favorite is the way EVERY goddamned J2EE app server has a slightly different understanding of JNDI naming conventions: is it java:comp/env or just/env? Blah... at least every app server I've ever screwed with requires you to mess around with JNDI names in different places and never document exactly which form of the JNDI name you are supposed to use where. Pain in the royal arse.
I love Java as much as the next guy. Well probably even more. But if I never have to touch Weblogic again, that'll be too soon. I know, I know, 6.1 ain't so bad, and I've been away from this POS since before 7.0 came out, but I was one of the serious victims of Weblogic 5.1. Worst piece of commercial software ever - I had an engineer on my time who was devoted for about 2 weeks to being on the phone with BEA to make sure their next SP fixed some serious issues with non-J2EE compliant transaction handling that broke our entire product.
Frankly, with JBoss 3.0 out, if you do need EJB support in an application, that's a great place to start - 3.0 supports clustering using the excellent JavaGroups system, and this was the MAJOR weakness of 2.x vs. Weblogic.
And as somebody with more J2EE experience than I would care to admin, you might really want to think about whether spraying EJBs all over an application is the best architectural solution for the problem at hand. Not every "enterprise class web application" needs EJBs. Can you and will you use CMP? If so, then it's worth it, but REALLY make sure CMP will work for your app (by the way, strong CMP capabilities are one area where Weblogic may still shine more strongly than JBoss). Do you need and will you use declarative transactional boundaries? These can certainly come in handy, though you can take advantage of them with session beans, no need to use bulky entity beans if you don't need them.
By the way - one important thing I should mention - as of 6.1 JBoss was still 2-3x faster than Weblogic 6.1 for all of our applications at my company. YMMV though, depending on the nature of what you are doing, and these weren't formal benchmarks. 7.0 may have finally solved their performance issues - I don't know though, and with my past BEA experiences, I don't think I ever want to know.
I know I often see reports of things that anger me on Slashdot. I sometimes decide it's worth emailing people to complain. This is one of those times. If we all email info@archive.org or wayback@archive.org and register our dissatisfaction at their caving to requests from a cult to block material from perfectly legal websites, they might get the drift that it's bad publicity for them to go down like 50 cent whores.
If the CoS fuckers bring it to court and win, then there's nothing that can be done, but we have a responsibility as citizens and members of the Internet community to fight this kind of restriction of information about a dangerous cult.
I personally would be glad to donate some money to anybody faced with a lawsuit from CoS - I know there are probably a lot of other Slashdotters who feel the same way, and could help out a bit. These people are dangerous to the foundation of our free and democratic society. God forbid they should ever come near me or fuck with my First Amendment rights - I would eat these people for lunch and then shit them out into a little hole in the ground, their fruity little celebrity members and all.
I didn't read the article, but I did read some other Indymedia articles. It's not a knee jerk reaction, since my reaction wasn't to the particulars of the article at all (which I stated was a generally good thing, that I have no problems with) - thus I feel no need to apologize. Rather, I was posting my reaction to the other content on Indymedia, which I most certainly DID read. The point about FreeGeek was made by somebody else, and I credited that in my post, so if that poster made a mistake, you can't blame me for it, I was just pointing out what they said. The point still stands that the project sounds nice, but the organization sponsoring it clearly supports a set of viewpoints that I find abhorrent and ill-conceived, all labels aside. See my other responses if you want to read more of my thoughts on why I feel this way, I won't bother repeating it again.
You are correct, the poster from whom I gleaned that information was clearly wrong. And stop being a dickhead while you're at it, I'm not trolling, I'm just pointing out the part that was left out from the slashdot editors posting about who Indymedia are.
I didn't say that, now you are putting words in my mouth. I didn't say that everybody has to be a card-carrying member of the Ariel Sharon fan club. Disagreeing with the policies of the current Israeli government is one thing. These guys are of a different ilk. They seem to support ostracizing Ehud Barak, the most pro-peace Israeli PM ever (found a piece on this linked off their main page). They seem to conveniently avoid discussing the fact that Palestinians commit murderous terrorist acts against the Israeli state and people, killing people without ANY regard to whether they are combatants or civilians.
That's not reporting. That's Palestinian propaganda. Most of the far left wing seems to buy into this crap. I consider this antisemitic (which according to Webster's and Merriam Webster's has come to mean discriminatory against or hating of Jews, not all Semitic peoples, despite the word's structure and appearance).
It is fundamentally antisemitic to start out with a prima facie assumption that Palestinians have a right to a homeland that legitimizes their violence, but that Jews do not have the same right to a homeland that allows for violent response. The leftists generally legitimize this by sympathetic portrayal of the "struggle of the oppressed" which they apply to one side and "vicious domination" which they apply to the other. These portrayals are fictions, and deny the depth or complexity of the topic. Furthermore, they assert in blanket fashion that the Palestinians are victims of oppression, when they have historically been the instigators of violence in the holy land early in the 20th century (don't bother attacking me on this, go do some research on the history of the Palestinian protectorate during the first half of the century first, then we can discuss details if you want).
Indymedia is not the kind of organization I would want to associate myself with, or support even indirectly. Just go to their front page and read about the kind of annoying, wrongheaded activism they seem to support. They are not so much a news organization as a clearing house for far left activist information. These are people that talk about "global justice" when they really mean justice for their particular downtrodden group of the day. On their front page and links off of it, I find evidence of seriously anti-capitalist, anti-Semitic and anti-American sentiment.
While this does sound like a noble project, there are other organizations (as was pointed out by another poster) with similar projects that you might support if you find Indymedia's politics so far left that they're about to fall off the table.
It is certainly also true that there are people located domestically in the US we should consider helping get access to computers and technology training, though I don't think that should preclude helping those in South America by any means, unlike some of the other posters in this thread.
It's hard to "outsmart" serious developers motivated by passion and ego-fulfillment. They can't _lose_ by not being profitable. They can lose only if nobody uses or cares about their software. So the only way to "outsmart" them would be to produce software that fulfills all consumer demand at a price point so low on the common person's indifference curve that there is no motivation to use Free (and free) Software.
If I were running Microsoft, I would focus on the ability to produce finished, refined software that results from having massive numbers of developers on payroll - control over goals and marketing-directed development allows a large corporation producing closed-source commercial software to produce certain kinds of results faster than the Open Source slowly-rolling-ball approach. In other words, it takes time for major Open Source undertakings to gain community momentum, and even longer for Open Source projects to develop user-friendly polish, when more common, non-developer users get involved and start driving development with feature requests.
Microsoft also needs to deal with the fact that they sometimes put consumer demand in the back-seat to their own interests and big business interests in general. NOBODY demands DRM. Pushing it down people's throats is a major mistake. No endeavour yet has been successful at getting people to adopt a technology with DRM capabilities or any such non-feature "security features". In the future this may become a drag on the bottom line with Palladium et. al. losing popularity. It's hard to convince Joe Sixpack right now that Linux is cool and he should be using it. If Windows becomes so crippled by DRM and "security features" that Linux (or some OpenBeOS-alike or other Open Source OS) can serve as the basis for a fully capable operating environment for desktop PCs, the bottom line will suffer.
Outsmarting Open Source is really more a matter of keeping in touch with what people want. Frankly, MS has done a good job of this in the past, cutting many corners, and infuriating many developers, but they have gradually improved the Windows platform - with Windows XP they have started down a path of backtracking on their advances, getting a bit too high off the hog with their monopoly. If they are trying to outsmart Open Source, they need to go back to thinking about what users want, and not what the MPAA and RIAA tell them they need to get securely in bed with them, so they can jointly 0wn the set-top box market and media-on-demand markets they have their greedy eyes set on.
Sorry I was mistaken - you are right that factoring is not proven to be NP hard or NP complete (dredging up CS knowledge from 4 or 5 years back here).
However, you are not 100% correct either. Most practical experience does not suggest a polynomial time solution exists (with the exception of Shor's Algorithm and the quantum factoring algorithm - this does mean the problem is in BQP, the new class of bounded-error, quantum polynomial time). If you look up the modern definitions of P, it seems to refer only to deterministic sequential machines, and I don't think that includes quantum computers strictly speaking.
I guess this is a quibble, but a worthwhile one, since the whole point is that there is a class of problems that _seems_ to be made easier (i.e. polynomial) by quantum computing, though it's not clear that those same problems don't have non-quantum polynomial solutions, it certainly appears that way based on everything we know.
You seem to be correct though that there is no proof of anything about P=NP from QC (I just looked it up and I'll be damned if I could make any sense of the articles I found without some serious study).
1) Hydrogen IS less stable than long chain hydrocarbons. It spontaneously combines with other atoms to form more long term stable compounds like water, at least at temperatures and pressures like that on earth.
2) I am not a jackass. In scientific terms, there is OBVIOUSLY no difference. If you can combust it and extract energy then it IS a source of energy. Of course, what matters here on planet earth (remember that place?) is what we have available to us as a source of energy.
Your argument about availability of hydrogen is fallacious. The fact is based on simple chemical energy calculations you can show that it is easy to extract energy from naturally occuring hydrocarbons via combustion. To extract energy from hydrogen, we need to first look at the energy required to produce hydrogen from the molecules AVAILABLE ON EARTH that contain it.
3) Who said electrolysis was the only way to get hydrogen? It's just the most obvious one since water is so abundant on earth. Producing hydrogen from algae is a reasonable way to get it - of course, this is also known as converting and storing solar energy into hydrogen. The required energy is still quite large, it just comes from the sun via photosynthesis. I realize a similar natural process occurred millions of years ago to produce hydrocarbons we pull from the ground but that's the entire point - we have to set up and run algae farms as a mechanism to convert solar energy to a combustible chemical form (hydrogen).
4) I didn't make the distinction, others have made it. The reason it's important to make is because many people are putting their hope for clean cars and a cleaner environment on hydrogen cars, fuel cell technology, etc. Most people, even on Slashdot, do NOT understand that you have to make/extract hydrogen and that it's not just a matter of figuring out efficient ways to do that, it's a FACT that you can calculate the molecular bonding energies of most common hydrogen containing compounds on earth and show what a large output of energy is required to make/extract hydrogen and that energy MUST come from somewhere. It's not just some "efficiency" factor solvable by better engineering methods, it's fundamental molecular physics.
Of course, it's still possible - and if somebody can make a cost and resource efficient algae-based hydrogen production process, then god bless them, but that process isn't just incidental, it's the entire key to using hydrogen as a fuel.
If you can explain how this is "just semantics" then please do. I find this discussion insulting at this point since your argument is not based on science (you misunderstand the concept of energy input in breaking bonds to release pure hydrogen, and you illustrate your lack of understanding of the idea of chemical entropy and stability a la a basic college or high school AP level chemistry class) and certainly not based on economics (which you seem to think are irrelevant).
Come back when you've got an education and some exposure to the real world.
Huh? I was using an Athlon 800 with 256MB of RAM and Mozilla 1.0 for Windows ran great on it (I just replaced this machine this morning with a brand new Athlon XP 2000+). The problem is that the XUL/Mozilla GUI in Linux is still not as fast - strike that, nowhere NEAR as fast as in Win32. I just don't know why, if it's Gtk+ cruft or what. Frankly, anything above a 500Mhz PIII era machine runs modern versions of Mozilla (1.0+) in subjectively fast time (i.e. you don't notice UI lagging). The Moz team needs to work out their UI performance problems on Linux (I haven't used Mozilla on Linux in upwards of 6 months, so I'm assuming it still has the same issues it used to).
I think part of the reason such discussions seem to be lacking out there is that each GUI toolkit has its own way of conceiving of event-based GUI interaction, and separating the presentation of a GUI element from the logic that handles it. Thus there is no real standard set of design patterns for GUI implementation (there are tons of sites I found using Google on GUI "Design Patterns" which are basically just HCI best practices for communicating certain kinds of concepts). For example, Qt uses the signal-slot mechanism. wxWindows uses EVT_ macros to associate an event with an action method. These encourage different ways of structuring GUI code.
I am not saying it's impossible to come up with a set of rules of thumb for general GUI development and implementation in the same way that general design patterns for OO development exist to solve certain kinds of problems that are commonly encountered, but I'm doubtful they would be as useful as you would think.
I actually started working on this a bit for the excellent DScaler TV tuner card app (this is a Windows app), but I haven't gotten very far yet, mostly due to having lots of other more pressing projects, but I wrote some hack-job code to display current guide data in a simple box overlay drawn on top of the DScaler TV window. It really needs a much more comprehensive treatment than that, but the point is this is a couple of week project. If you are interested, get in touch.
I don't think exercise is a cure-all for serious mental disorders, but for a lot of us who have experienced common, moderate neuroses, a solid exercise regime will greatly reduce your symptoms. Then you won't need to curse people out all the time and smack them around (well, sometimes people deserve a little bit, and that's okay). I lead a much happier life this way, and I've lost weight and look better, leading me to get more dates with the ladies, and thus get laid more. Which makes me even more mellow. Life is great. And I still play half hour to an hour of games a day.
Sorry, you've got it wrong. I left her, and it had nothing to do with TV habits. More like fundamental differences in our life goals and motivations.
Disclaimer: I'm not married, but my girlfriend was living with me for over a year in which I had a Tivo in my living room.
I generally dont mind stringing together all the dialogs, menus, etc. of a GUI app manually, at least in Python/wxPython, since it's so damned easy to do.
wxPython is definitely a superior language to VB for quick and dirty but powerful GUI development. Though I still find Python, like other weakly typed languages, gets REALLY unwieldy in large projects. You really start to MISS that all the parts of the system have a contract with each other (i.e. enforced typing in method calls). But hey, if you are in VB land right now, this won't bother you.
New products are now on the market which embed so-called "copyright protection systems". DVDs are the most famous example. Want to make your own edit or parody of the DVDs you own? Want to rip DVD audio into MP3 or some other computer-based format? Want to cut and paste material from some "protected e-book" document? Tough shit, you can't without violating the DMCA, if a company doesn't want you to, since they can claim pretty much anything is a copyright protection mechanism (including some pseudo-obfuscation bullshit like CSS on DVDs).
So while fair use isn't technically affected by the DMCA directly, in practice, the right to fair use has been abolished for digital materials.
I think this has more to do with Apple's strategic position than with currying favor with users per se, but I'm sure they would like to be seen as more user friendly than other computer manufacturers, and this does fit in with that.
It's obvious that corporations exist to make money, but if we are successfully voting with our dollars, we will encourage PC manufacturers to give us the kind of open hardware and software we want. Granted, Debian will always be more Free than Mac OS, but that doesn't mean we ignore a position that an important company is taking that supports our stance on user rights and freedoms.
Also, your solution isn't quite well fleshed out enough for me to buy into whole hog. A pure meta-data model (sorry, I know that's not precise terminology, but I think I am using it in the same way you are using the term data dictionary) is well suited to data that you only need to take from a form field, stick into a particular DB table and field, and retrieve and display later.
If your application needs any particular logic to be based off of some fields, metadata models fail - you need semantic knowledge of field's meaning and associations in the application code.
Unfortunately, many enterprise applications have a lot of data they just need to shuffle around and pass along to somebody else farther downstream, and a lot of data they actually need for application manipulation. In my experience, if you try to handle complex data types with a data dictionary-style mechanism, your dictionary ends up with so many damned parameters it becomes unmanageable. If the data is handled in code, you will just have more code for complex data, and less code for passthrough or simple data.
Also, I should point out that in general, code generators keep data in MORE COMPACT form, not less compact - I believe that smagoun is referring to a build system that uses generated source code files as intermediates in the build process, not as verbose files that are to be edited manually. The advantage this provides is that you can get compiled code performance out of data manipulations that would otherwise require semi-interpreted performance if they actions are all determined at runtime (example - autogenerated externalization methods in Java vs. default object serialization - huge performance difference in performance critical apps).
However, I should point out that though there is quite a bit of precedent and law that seems to protect parody fair use for copyrighted material, trademark use is less clear cut. See Copyright Law Section 107 "fair use of a copyrighted work...for purposes such as criticism or comment...is not an infrigement". Also see Campbell v. Acuff-Rose Music, Inc., 114 S.Ct. 1164, 127 L.Ed.2d 500 (1994)
for some precedent (this is the 2 Live Crew case on the Pretty Woman parody song).
HOWEVER, trademark usage is still subject to standards of dilution avoidance - if a parody is judged to be confusing or causing trademark value dilution, a court may rule against its use even for parody. The political speech trump card likely wins out every time, however, due to its special consideration within the law and jurisprudence.
So my guess is the description of the work they are doing is accurate, and there probably is some kind of consistent damage patterns with LASIK, though some people may never notice them.
My aunt and uncle both had LASIK and they have complained about the halos at night and generally poor night vision that has resulted. Also the results aren't always perfect 20/20 in both eyes when things heal.
LOL... that is the funniest thing I've seen all day. Thank you for bringing some laughter to my world.
The parts that I think are useful of J2EE:
I can't think of much else off the top of my head, and if none of this sounds useful to you, then you've probably never worked in the awful realm of enterprise software development, and you probably have no need for an application server.
The thing is though even with the wide array of things covered by the J2EE standard, there are so many vendor-specific tools and vendor-specific deployment descriptors and so on and so forth - there's always a lot to learn and minor changes (a few lines of code and several XML configuration files here and there) to get things up and running on a new vendor's J2EE app server.
My personal favorite is the way EVERY goddamned J2EE app server has a slightly different understanding of JNDI naming conventions: is it java:comp/env or just
Frankly, with JBoss 3.0 out, if you do need EJB support in an application, that's a great place to start - 3.0 supports clustering using the excellent JavaGroups system, and this was the MAJOR weakness of 2.x vs. Weblogic.
And as somebody with more J2EE experience than I would care to admin, you might really want to think about whether spraying EJBs all over an application is the best architectural solution for the problem at hand. Not every "enterprise class web application" needs EJBs. Can you and will you use CMP? If so, then it's worth it, but REALLY make sure CMP will work for your app (by the way, strong CMP capabilities are one area where Weblogic may still shine more strongly than JBoss). Do you need and will you use declarative transactional boundaries? These can certainly come in handy, though you can take advantage of them with session beans, no need to use bulky entity beans if you don't need them.
By the way - one important thing I should mention - as of 6.1 JBoss was still 2-3x faster than Weblogic 6.1 for all of our applications at my company. YMMV though, depending on the nature of what you are doing, and these weren't formal benchmarks. 7.0 may have finally solved their performance issues - I don't know though, and with my past BEA experiences, I don't think I ever want to know.
If the CoS fuckers bring it to court and win, then there's nothing that can be done, but we have a responsibility as citizens and members of the Internet community to fight this kind of restriction of information about a dangerous cult.
I personally would be glad to donate some money to anybody faced with a lawsuit from CoS - I know there are probably a lot of other Slashdotters who feel the same way, and could help out a bit. These people are dangerous to the foundation of our free and democratic society. God forbid they should ever come near me or fuck with my First Amendment rights - I would eat these people for lunch and then shit them out into a little hole in the ground, their fruity little celebrity members and all.
I didn't read the article, but I did read some other Indymedia articles. It's not a knee jerk reaction, since my reaction wasn't to the particulars of the article at all (which I stated was a generally good thing, that I have no problems with) - thus I feel no need to apologize. Rather, I was posting my reaction to the other content on Indymedia, which I most certainly DID read. The point about FreeGeek was made by somebody else, and I credited that in my post, so if that poster made a mistake, you can't blame me for it, I was just pointing out what they said. The point still stands that the project sounds nice, but the organization sponsoring it clearly supports a set of viewpoints that I find abhorrent and ill-conceived, all labels aside. See my other responses if you want to read more of my thoughts on why I feel this way, I won't bother repeating it again.
You are correct, the poster from whom I gleaned that information was clearly wrong. And stop being a dickhead while you're at it, I'm not trolling, I'm just pointing out the part that was left out from the slashdot editors posting about who Indymedia are.
That's not reporting. That's Palestinian propaganda. Most of the far left wing seems to buy into this crap. I consider this antisemitic (which according to Webster's and Merriam Webster's has come to mean discriminatory against or hating of Jews, not all Semitic peoples, despite the word's structure and appearance).
It is fundamentally antisemitic to start out with a prima facie assumption that Palestinians have a right to a homeland that legitimizes their violence, but that Jews do not have the same right to a homeland that allows for violent response. The leftists generally legitimize this by sympathetic portrayal of the "struggle of the oppressed" which they apply to one side and "vicious domination" which they apply to the other. These portrayals are fictions, and deny the depth or complexity of the topic. Furthermore, they assert in blanket fashion that the Palestinians are victims of oppression, when they have historically been the instigators of violence in the holy land early in the 20th century (don't bother attacking me on this, go do some research on the history of the Palestinian protectorate during the first half of the century first, then we can discuss details if you want).
Indymedia is not the kind of organization I would want to associate myself with, or support even indirectly. Just go to their front page and read about the kind of annoying, wrongheaded activism they seem to support. They are not so much a news organization as a clearing house for far left activist information. These are people that talk about "global justice" when they really mean justice for their particular downtrodden group of the day. On their front page and links off of it, I find evidence of seriously anti-capitalist, anti-Semitic and anti-American sentiment.
While this does sound like a noble project, there are other organizations (as was pointed out by another poster) with similar projects that you might support if you find Indymedia's politics so far left that they're about to fall off the table.
It is certainly also true that there are people located domestically in the US we should consider helping get access to computers and technology training, though I don't think that should preclude helping those in South America by any means, unlike some of the other posters in this thread.
Just a thought.
If I were running Microsoft, I would focus on the ability to produce finished, refined software that results from having massive numbers of developers on payroll - control over goals and marketing-directed development allows a large corporation producing closed-source commercial software to produce certain kinds of results faster than the Open Source slowly-rolling-ball approach. In other words, it takes time for major Open Source undertakings to gain community momentum, and even longer for Open Source projects to develop user-friendly polish, when more common, non-developer users get involved and start driving development with feature requests.
Microsoft also needs to deal with the fact that they sometimes put consumer demand in the back-seat to their own interests and big business interests in general. NOBODY demands DRM. Pushing it down people's throats is a major mistake. No endeavour yet has been successful at getting people to adopt a technology with DRM capabilities or any such non-feature "security features". In the future this may become a drag on the bottom line with Palladium et. al. losing popularity. It's hard to convince Joe Sixpack right now that Linux is cool and he should be using it. If Windows becomes so crippled by DRM and "security features" that Linux (or some OpenBeOS-alike or other Open Source OS) can serve as the basis for a fully capable operating environment for desktop PCs, the bottom line will suffer.
Outsmarting Open Source is really more a matter of keeping in touch with what people want. Frankly, MS has done a good job of this in the past, cutting many corners, and infuriating many developers, but they have gradually improved the Windows platform - with Windows XP they have started down a path of backtracking on their advances, getting a bit too high off the hog with their monopoly. If they are trying to outsmart Open Source, they need to go back to thinking about what users want, and not what the MPAA and RIAA tell them they need to get securely in bed with them, so they can jointly 0wn the set-top box market and media-on-demand markets they have their greedy eyes set on.
However, you are not 100% correct either. Most practical experience does not suggest a polynomial time solution exists (with the exception of Shor's Algorithm and the quantum factoring algorithm - this does mean the problem is in BQP, the new class of bounded-error, quantum polynomial time). If you look up the modern definitions of P, it seems to refer only to deterministic sequential machines, and I don't think that includes quantum computers strictly speaking.
I guess this is a quibble, but a worthwhile one, since the whole point is that there is a class of problems that _seems_ to be made easier (i.e. polynomial) by quantum computing, though it's not clear that those same problems don't have non-quantum polynomial solutions, it certainly appears that way based on everything we know.
You seem to be correct though that there is no proof of anything about P=NP from QC (I just looked it up and I'll be damned if I could make any sense of the articles I found without some serious study).
2) I am not a jackass. In scientific terms, there is OBVIOUSLY no difference. If you can combust it and extract energy then it IS a source of energy. Of course, what matters here on planet earth (remember that place?) is what we have available to us as a source of energy.
Your argument about availability of hydrogen is fallacious. The fact is based on simple chemical energy calculations you can show that it is easy to extract energy from naturally occuring hydrocarbons via combustion. To extract energy from hydrogen, we need to first look at the energy required to produce hydrogen from the molecules AVAILABLE ON EARTH that contain it.
3) Who said electrolysis was the only way to get hydrogen? It's just the most obvious one since water is so abundant on earth. Producing hydrogen from algae is a reasonable way to get it - of course, this is also known as converting and storing solar energy into hydrogen. The required energy is still quite large, it just comes from the sun via photosynthesis. I realize a similar natural process occurred millions of years ago to produce hydrocarbons we pull from the ground but that's the entire point - we have to set up and run algae farms as a mechanism to convert solar energy to a combustible chemical form (hydrogen).
4) I didn't make the distinction, others have made it. The reason it's important to make is because many people are putting their hope for clean cars and a cleaner environment on hydrogen cars, fuel cell technology, etc. Most people, even on Slashdot, do NOT understand that you have to make/extract hydrogen and that it's not just a matter of figuring out efficient ways to do that, it's a FACT that you can calculate the molecular bonding energies of most common hydrogen containing compounds on earth and show what a large output of energy is required to make/extract hydrogen and that energy MUST come from somewhere. It's not just some "efficiency" factor solvable by better engineering methods, it's fundamental molecular physics.
Of course, it's still possible - and if somebody can make a cost and resource efficient algae-based hydrogen production process, then god bless them, but that process isn't just incidental, it's the entire key to using hydrogen as a fuel.
If you can explain how this is "just semantics" then please do. I find this discussion insulting at this point since your argument is not based on science (you misunderstand the concept of energy input in breaking bonds to release pure hydrogen, and you illustrate your lack of understanding of the idea of chemical entropy and stability a la a basic college or high school AP level chemistry class) and certainly not based on economics (which you seem to think are irrelevant).
Come back when you've got an education and some exposure to the real world.