Slashdot Mirror


User: object.orient()

object.orient()'s activity in the archive.

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

Comments · 13

  1. I'll probably do it. on Mandrake Asks for Support · · Score: 5, Insightful

    I mean, it's only $5 and it was the first distribution I thought got it right for intermediate/beginner Linux users. Folks like me who, at the time, knew quite a bit about computers and programming, but knew nothing about Linux. Plus it was the easiest to install early on for folks (again, like me) who had grown used to the relative ease of install and use of Windows and the Mac.

    FWIW, I first installed an early 5.x of Red Hat but got ticked when it didn't work with my sound card. It took me about a month to learn everything I needed to get sound working. After that, I muddled along with Red Hat for a while, but Mandrake came along and really added some value to what Red Hat had done, IMHO. The install recognized everything and even got X working properly. It also helped that the distro included more up-to-date packages (esp. of GNOME and KDE) and the -- probably worthless to me in the grand scheme of things, but still a factor -- pentium optimizations.

    Best of all, I think they've kept up their end of the bargain. They consistently provide a really good distro with up-to-date packages. They've done a lot of work on getting Linux to recognize hardware more seemlessly.

    Yep, all things considered I think they're worth $5.

  2. Re:What about Python? on Java as a CS Introductory Language? · · Score: 1

    First, the reply to this comment: "OOP is important, but it is not something you can grok as a beginning programmer, IMHO."

    IMNSHO, this is not true. Check out http://www.squeakland.org/learn/elementary.html. Those projects on the page were created by 4th and 5th graders in a Smalltalk-derived environment. (Admittedly, I was programming in BASIC in the 4th grade -- 1981 -- and assembly by 6th, but this is still impressive given that the entire class seems to grok it -- definitely not the case when I was a kid.) Click around and you'll see that things progress from there, but the point is that people inherently think in objects. This is pointed out by many psychology texts.

    It is also a fact, however, that humans are creatures of habit (for the most part). The reason so many programmers have a difficult time picking up OO concepts is that they have trained themselves to think like the machines rather than making the machines do the translation. In my experience, with a few notable exceptions, beginning programmers find OO easier to learn because the habits of procedural thinking aren't as solidified in their psyches.

    Now, as for what languages I would use when.... I would start with Smalltalk (or some similar, solidly OO language like Self) for those who have no programming knowledge and for those who don't yet know or care that computers "talk to themselves" in binary. Then, using that language progress to learning about how computers work internally (binary, CPU vs RAM vs ROM, etc.). Somewhere in there, start to teach C or Pascal. Introduce LISP and possibly Modula after that. From that point... I don't think it matters any longer. By this point, you're likely at least to the college level, so let the student decide which languages to learn from that point or teach the language(s) of the moment, Java, C#, C++, Object-COBOL, whatever. ;-)

    The interesting thing about that order is that I don't think it matters at what age you start. Progression should be made at the rate the student really groks the subject at hand.

    That's my two bits, anyway.

  3. Re:Other "stupid" things on The Return of Microsoft · · Score: 1
    Okay. I'm as "anti-Microsoft" as a semi-Libertarian is ever going to be. (Read: If they didn't lie about what they were doing; it wouldn't be so bad. But, since they do, they are pretty darn near evil.) The post I'm replying to, however, is silly:

    ..."look, there's PC DOS, DR DOS, CP/M, MacOS, and eventually we'll be using some kind of UNIX". Look what happened....

    Please do look what happened. The only OS people could afford that was arguably (I won't be dragged into that debate) better and more usable to non-technical folks than Windows (post-3.0) was the Mac. But... to get a Mac meant choosing "proprietary" hardware -- and who would want to be locked into something like that. (Irony -- or is it just sarcasm -- intended.) OS/2 just wasn't as good as Windows early on. It did get better, but by then it was too late. Too many other products (many of them still non-Microsoft) that people liked ran on Windows and not OS/2. Basically, the seeds of the near-monopoly had already formed.

    ..."look, there's Quattro Pro, Ami Pro, WordPerfect, Lotus 123, Paradox....Netscape... all of them are BETTER than the MS alternative" Look what happened.

    Again, please do look what happened. Try to tell me that any of those products in their latest or final version were as good as their contemporary M$ alternative. It just wasn't so. Now, I will grant you that part of the reason for this was M$'s ability to know what their OS could really do for them, but that doesn't change the fact that their product was considered the best in the market by the market.

    As for why the Internet would be different... it's not. You're right, most customers are relatively clueless about the future. But they are not clueless about buying the better product. If M$ comes up with the best solution at the time, they will win the day. Period. It's up to those of us who think we know better to present alternatives.

    So, if you think Perl is the best thing for the Internet, make something from it that can compete in the minds of those clueless customers. Personally, I work in server-side Java right now. I comment on mailing lists; have my opinion heard by Sun from time to time; have co-authored a book on how I think software development could be done better, easier, faster, and cheaper. What have you done?

    P.S.: That's about as close as I'll ever come to breaking my anonymity on this forum.

  4. Re:For starters netscape isn't a symptom on Second Thoughts: Microsoft on Trial · · Score: 1

    An AC said: There is a big difference between wanting to be number one and wanting to be the only one. One attitude is healthy and normal, the other...

    If we were talking about people, I'd agree. However, from a business's point of view, getting rid of the competition isn't the same thing as murdering a person. However, I agree that it's not necessarily a good thing for all who are affected.

    Really, this points to what I think is the overall problem, assuming there is one, with a corporate economy: there is a difference between the rights of individuals and the rights of corporations. Somewhere in that differentiation, the corporations no longer have any need for what individuals would consider morals. IE: corporations do not have "unalienable rights" to "life, liberty and the pursuit of happiness." However, individuals make up corporations, and they do have those rights. Therefore, the government is limited in what it can do to corporations (and it should be), but there is no moral or legal problem with one corporation taking the life of another.

    I'm still figuring out where a better place to draw that line might be. I don't think anyone else has the perfect answer either, judging by the subjectiveness (which I pointed out earlier) of such laws as do exist.

  5. Re:For starters netscape isn't a symptom on Second Thoughts: Microsoft on Trial · · Score: 3

    There is no need "to prove microsoft is anti-competitive." (By the way, the definition of anti-competitive being used is kind of counter-intuitive. What I mean is, for example, Microsoft is being very competitive; they want to win against all other competitors.) Business entities in the current U.S. economy are by their nature "anti-competitive". There is nothing illegal about that. In fact, there is nothing inherently wrong with it either. For you to succeed in business you must compete with the others in your sector (and occaisionally some others outside of your sector).

    In general, companies tend to take a slightly non-zero-sum view of the competition. For example, they might group together a little to propose standards (usually for quality and protocol) and to fund research. But, there is no legal or moral reason they should have to do this. (Actually, there is a legal reason in the U.S. -- if they can be shown to have a monopoly in a sector, the Sherman Act is interpreted to mean that they must cooperate to some subjective degree in that sector and not tie business in other sectors to their monopoly in a subjectively unfair. The subjectiveness is one of the problems with the law, IMHO. Oh, and IANAL.) MS takes the view that such cooperation is their choice, and, for the most part, they don't do it and even try to prevent it in many (maybe even most) cases.

    Knowing that, and then saying that an anti-cooperative company like MS doesn't want to work with Samba or Wine or [insert your favorite example here] is like saying the Allies didn't want to give the Axis RADAR. It's blatantly obvious.

    I'm not saying Microsoft isn't bad in its own way. I'm also not saying that the current corporatization of the economy is good. It's just that neither is as inherently bad as folks here seem to want to think.

    So... is MS a monopoly? IMO, yes in the OS sector, and now they may even be so in the Web browser sector. Was that because of tying? I think so. Therefore, I think MS has broken the law. But then, IANAFederalJudge.

  6. Re:War Room Veteran Speaks out :) on "War Rooms" Double Software Productivity · · Score: 1
    As a war room veteran myself, I can tell you that the war room thing helps, but only to a point.

    The best possible thing you can have on a project is a team. I mean a real team that works together and knows they can trust one another. Being in a war room helps build that if it isn't there already. (As another poster says farther down my -- nested, oldest first -- page, they destroy it more quickly where it won't work as well. But the person or persons causing the destruction are usually more identifiable in a war room as well.)

    Going out to eat together and just being together are important parts of that. You become a group with "inside" jokes that only the team knows about which stregthens the bond.

    If one member of the group completely refuses to play with the others that member can disrupt things, but not all members have to do everything.

    In other words, if you don't like sports and the rest of the team does (this is a hypothetical situation, I know), then suggest and/or do something else with the group. Make yourself part of the team and you'll see the benefits.

    I'm a confirmed introvert, but I have still been able to participate in these things. I have to eat; the rest of the team has to eat; therefore, I'll go with them. The amount of bonding that takes place just by doing that is amazing.

    It's probably too late to post and have anyone see this (a day is a long time for this kind of thing), but anyway...

  7. Re:Defining 'Program' on Second Coming of Technology · · Score: 1
    Who says a program has to have a beginning and an end?

    That was the original definition (and for the most part still is -- especially in any realm other than computing).

    My point is that there should be nothing wrong with saying that computers run programs, whether that program was written in C++ or assembler, in 1950 or 1999. That's what they do! Before you say they don't, you ought to revisit the definition of a computer as well...

    Reread my comment. Nowhere did I say any of these things isn't a program. I said that the definition of "program" has expanded to include them. You think I'm trying to redefine words, but I'm only pointing out that they've already changed. Basically, I'm talking about entymology and using that to point out that just because "computers run programs" doesn't mean there isn't a new expansion of what a "program" is coming along. I.E. that "axiom" isn't really, and even if it is true, it's not a limiting factor.

  8. Re:This article is flamebait on Second Coming of Technology · · Score: 1
    As someone who (as you might guess from the nick) is quite fond of object-oriented concepts I'll take just a second to point out a flaw in your logic.

    You say: A computer is a device that runs programs.

    The problem is that this "axiom" isn't. What I mean is that it's not a self-evident, non-challengable rule because the definition of what a "program" is isn't self-evident.

    When programmable computers (think Turing et al) debuted, a program was something that had a definite beginning and end, a series of steps in between, and always had a result to report. There was no concept of a computing "environment" except in the sense of having a big room in which to store all the equipment.

    Sometime around the late 1950s or early to middle 1960s (it depends upon which stories you know and which you believe) that really began to change. The concept of the "operating system" converted from hardware-only to a software-based "thing". It started with just a sequence of things that happened before any other programs ran and changed into something that actually provided on-going services. In the definition in use before that time, the operating system could not have been called a program. The definition of a program changed to include things that were on-going and that could be said to "live" on the machine indefinitely.

    Fast forward to now and we're asking computers to be our "virtual" this or that. We're seeing more and more problems that can't easily be solved by looking at the world through a "functional," step-by-step mindset.

    The point I'm trying to make isn't that "everything is [or should be] an object". (Although I think that's not the worst way to look at things.) The point I'm making is that just because you look at a computer and see "something that runs programs" doesn't mean a darn thing about how anything (including or especially file systems) should or will work in the future. Why? Because the definitions may change just as we can now have "object-oriented programming".

    Before I forget, one more thing. You say that, "'OLE' and 'Objectification'-style ideas," are "nowhere". Have you heard of COM, D-COM, CORBA, etc.? That oversight leads me to believe that your reply might be flamebait, but oh well...

  9. Re:History Repeats itself on Systems Research Is Dead? · · Score: 2
    Ah, if only I could moderate... but failing that I'll make the point Ted V makes in a different form and hope that gets moderated up. Hmm... that's about as good a lead-in as I could hope for.

    Ted says, "Science is a punctuated string of 'eureka!'s, spaces apart by periods of dull silence." Well, almost. Scientific discovery is a strange and interesting system. Major breakthroughs might come from seemingly nowhere. There might be a definite chain of events. Just as common, though is for a breakthrough to be made but not recognized or appropriately utilized for some time. Generally the person making the "re-discovery" is credited with the creation of that thing. (This is the reason my opening paragraph was a good lead-in.)

    Quite often, and this seems to be especially true in the computer science arena, a discovery or strategy will be discovered and/or used by a small number of people (as few as one) and then, inexplicably "incubate" for years before the combined "eureka" of a more significant group of people. Also, quite often, a set of seemingly unrelated discoveries are made that are only later combined to produce something truly interesting. (Transmeta's Crusoe for all the pseudo-hype being thrown around here is really just an example of this.)

    So, I ask you, where along this chain does "innovation" happen? I choose to believe that innovation (literally -- according to Mirriam-Webster -- the introduction of something new or a new idea, method, or device) includes not only the creation of completely original ideas and methods but also the creation of new combinations of existing tools and/or components. I think it further includes realization that an old idea has interesting implications and uses that weren't explored fully before.

    Using my definition/connotation of innovation, Pike is right that Microsoft has been very innovative. They have recognized good ideans and combined them with others to create new things (intentionally many times and many times not). Others are also right that the companies and individuals who orignated the "components" Microsoft combines are being innovative.

    As a conclusion, I ask the following: If innovations are often not recognized as such when the originally happen, and if much discovery takes place as the result of combining (or re-combining) seemingly insignificant, pre-existing things, can anyone claim to know whether innovation in any arena is really dead as opposed to just lurking?

  10. Oject-Oriented, High Performance Web App. Design on On Building High Volume Dynamic Web Sites · · Score: 2
    Or OO HiP WAD. ;-)

    Really, I do this stuff for a living (primarily in server-side Java and these suggestions may show that), and there is no easy way I know to get great maintainability and high performance. Here are a few things to consider, though (there may be some information that was in previous posts):

    • The first thing to consider is what the scale of your system's complexity is. For the simplest sites, try to stick with static HTML as much as possible. Use a server-side process to update those files once or twice a day. For moderately complex systems or systems that just need to be updated more quickly use something like PHP or Cold Fusion with a simple database. For highly-dynamic sites with complex business rules, you'll need a well designed, application server-based system. The rest of the comments are on how to build these types of systems.
    • To make your system the most adaptable it can be, concentrate on the "problem domain" or "business rules". Design an object-oriented problem domain. Keep that problem domain code as separate as possible from the "presentation" and the "data managment" code. Generally, we have separate Java packages for problem domain, presentation logic, and data managment.
    • Find a way to cache instantiated problem domain objects in memory. Object pools, Enterprise Java Beans, and object caches are things to look into.
    • Cache semi-static results. Even in a highly-dynamic system, it is likely that less than 25% of the site is really that dynamic. In an e-commerce site, the inventory levels might change, but the product information (descriptions, images, etc.) will not. Design your presentation logic such that you can cache as much of these results as possible in memory.
    • As you can see from the previous two, go heavy on the RAM on your servers.
    • To handle heavier loads, never have the same web server handling both application requests and static requests. Off-load static HTML and images to another server (or group of servers).
    • Use an application server that supports load balancing. EJB is a good (not great, but it's pretty widely available) method for distributing the problem domain load.
    • To aid in the maintainability of the presentation, use a template engine or use JSP, but treat it as a template engine. Examples of template engines include WebMacro and FreeMarker. Don't put code in the HTML or HTML in the code if you can at all help it.

    Well, I'll stop there. There's plenty more to cover, but there are also plenty of books out there. Basically, in my experience, the first rule of maintainability is keeping the problem domain separate, and the first rule in performance is caching.

  11. Re:It just looks bad to extroverts on LonelyNet · · Score: 2
    I urge you to do an expirement...

    This is good advice. I recommend it to prople who is introverted and the introversion is having adverse effects on their life. (I have tried it in the past, but it's just not for me -- and I do not believe I am really adversely effected.)

    At this point I think I should stand back and, in my best Keanu Reeves voice, say, "Whoa." The response to this topic is impressive, but I didn't expect this level of response to my post. The people referring to Social Anxiety Disorders are correct about the seriousness of those disorders. However, there is a vast expanse between feeling "drained" by being around people, and having that evolve into something that should be labled a disorder. So, while I do not have a psychology degree, I'd suggest to the introverts out there: Don't let introversion ruin your life, but also do not automatically let others tell you that there's something wrong with you because you're not a social butterfly. If friends and family -- people you respect -- begin to act worried, that is the time to reevaluate things.

    (For the record, I am only slightly anti-social due to my introversion. In fact, I'm getting married this May.)

  12. Re:Introversion vs. Shyness on LonelyNet · · Score: 1
    You seem to have shyness confused with introversion.

    Perhaps to an extent. However, if you re-examine my message, nowhere did I say that I was "uncomfortable around people [I] don't know well." I simply have to work hard at conversation -- even with people I do know well.

    Also, not to be snide, but being an INTP doesn't mean you know what you're talking about; it means you have tendencies to strongly believe that you are right and that you can probably justify them with observation and reason (which still does not make them right or wrong). Take it from someone who has taken these evaluations enough to know that while I am definitely an introverted thinker, I fluctuate between intuitive or sensing, and between judging or percieving. ;-)

  13. It just looks bad to extroverts on LonelyNet · · Score: 5
    Long time reader, first time poster, but when I saw,
    But here's a chance to say for yourselves whether you consider the Net isolating or not, rather than to have studies or others describe that experience for you,
    I had to respond.

    It occurs to me that the people doing these studies have to be extroverts. (Extroverts are people who seem to gain energy from being around other people; introverts are people who gain energy from doing things -- including just resting -- without other people around. See http://keirsey.com/pumII/ei.html for more.)

    This study is blatant in its disregard for introverts like me. Being around other people is often a physically and psychologically draining experience for me. This is because, for whatever reason, spontaneous conversation does not come easily. I find myself searching for a topic or something interesting to say. When I finally find something, the moment has passed, or (worse yet) I have to then edit it to make sure it doesn't sound self-absorbed and that I have formatted it correctly so that it is really understandable. This makes it very difficult to "mingle" at a party, and I end up having that "alone in a crowded room" feeling.

    When I write something, however, the words flow more easily because I know that I can and will go back and edit later, before sending/publishing.

    Because of this, the 'net has been an indispensible tool in my attempt to communicate and do so effectively. If I had to conduct all business conversation in person or on the phone I would be much less effective than I am using email.

    The same is true for certain personal communications. Live, real-time conversation is difficult and draining. Therefore, I'm not as likely to do it. By using email to contact friends, I'm much more likely to actually stay in touch. Since email is so much quicker than the post, real conversations can happen without taking weeks to finish.

    So, while the extroverts may look at folks using the internet and say, "Argh! They have no human contact," the introverts look at them and say, "Hey! They're finally able to talk to people."