Slashdot Mirror


User: quasi_steller

quasi_steller's activity in the archive.

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

Comments · 135

  1. Re:What is a .Net Developer? on .Net Programmers Fall in CNN's Top 5 In-Demand · · Score: 1

    I'm in my freshman year of college and I've already learned OOP... some places must really be backwards.

    Depends. If you learned OOP according to the gospel of C++, Java, or C#, then you're school is backwards. My personal opinion is: OOP should not be taught in a freshman class. According to Matthias Felleisen:

    ...a functional semester ideally prepares students for the true essence of object-oriented programming according to Alan Kay: the systematic construction of small modules of code and the construction of programs without assignment statements. Experience shows that these courses prepare students better for upper-level courses than a year of plain object-oriented programming. Initial reports from our students' co-op employers appear to confirm the experiences of our upper-level instructors.

    PDF slides of Felleisen's presentation. Unfortunately, I don't have a link to a video of the presentation.

    In my experience, students who learn OOP, believe that private member variables (private mutable state) is okay, when in fact, private member variables should be used only when necessary. If it is possible assignments should be avoided, data should be passed to a method via the parameters, and results returned from the method because:

    1. It makes the method easier to reason about. The methods behavior can be determined by looking the method call. This is not so when there is private data, or global variables influencing the behavior of a method.
    2. It makes the method easier to test. Unit testing a method is hard (and sometimes impossible) when the behavior of a method depend on more than just the parameters.
    Some programmers use OOP to alleviate the use of parameters. Oh, I can just make this a private field, they tell themselves, then they go off and make what would have been a parameter into a private data member, without any regards to the consequences of their actions.

    If you have a procedure with ten parameters, you probably missed some.---Alan J. Perlis

    I had written a nice piece of code here, but since Slashdot considers code lame (the lameness filter), and thus discourages intelligent conversation involving code examples and the like, I'll have to point you to these threads discussing some of the problems with OOP as it's taught in many schools (and why I believe a pure OOP or OOP biased computer science curriculum is bad).

  2. Re:The real 90s versus outdated 00s software on Java Is So 90s · · Score: 1

    My biggest problem with lisp is that "emacs" seems to be a given. Let's face it, unless you love emacs, it sucks.

    Well, I like Lisp (and Scheme) a lot, but I just can't get myself to like emacs. There are a few good ways to use Lisp with other editors. Personally, I'm a vim guy, and although it is nice having an editor that understands what your doing at a deeper level, even emacs doesn't have the kind of environment that is possible with Lisp. The development environment is an area where I think Lisp is currently lacking. (Wasn't always that way, but, alas, the Lisp environments of the LISP Machines of the 1980's are gone). Personally, I think it would be really cool to build a development environment (in Lisp of course, if only because it will make the environment more tightly integrated) that has a vim type mode (and maybe even an emacs mode). Until then you'll just have to settle for either emacs or perhaps VIlisp in vim.

  3. Re:Particles on Nobel Prize in Physics: Seeing the Light · · Score: 1

    You need to use SCIgen to generate a research paper with graphs, equations and everything, then try submitting it to a conference. Who knows you may get to give a lecture on your new theory.

  4. Re:Perhaps it doesn't... on Perl Best Practices · · Score: 1

    [obvious]First, you shouldn't just try to execute code you find on /.[/obvious]

    Depends. Who's to say he didn't exicute that code in VMWare or some other protected environment? Just because somebody ran the code to see if you were telling the truth concerning whether that code actually ran, doesn't mean you should assume they were stupid and didn't run that code in some protected environment.

  5. Re:Best Best Practice: Don't Bloat Perl on Perl Best Practices · · Score: 1

    Any of the LISP's are simple. Ruby tends to be simple too. Now, if you are including in that 2 semester course the libraries as well, then you might be correct, but there are plenty of examples of very simple, orthogonal languages.

  6. Re:Huh ? on Interview With Reiser4 Author Hans Reiser · · Score: 5, Informative

    Comparing ReiserFS and WinFS is a bit like comparing Qt and Explorer - nonsensical.

    Are you sure you understand what ReiserFS is suppose to do? What about WinFS? I don't think compairing WinFS to ReisierFS is quite like compairing Qt to Explorer. The functionality of WinFS is (as I understand things) a proper subset of the functionality of ReiserFS.

    They're different things, operating at different levels, to serve different purposes.

    Again, there purposes are not really different. Sure, ReiserFS is a full blown filesystem, and WinFS is not a filesystem, however the functionality of WinFS is included in ReiserFS. The fact that they operate at different levels is the reason for Reiser's remarks concerning ReiserFS and WinFS. That's his point. WinFS works on a user level to provide functionality that ReiserFS provides at the filesystem level, and Reiser feels that this is a more mature design.

  7. Re:Maybe I am missing something on Looking for Portable MPI I/O Implementation? · · Score: 2, Informative

    When I did MPI projects for school I essentially did this when I wanted to send something in a struct. However, as one poster already pointed out, MPI takes care of the conversions between big and little endian. If you have a homogenious network, you'll probably be okay just sending a struct as a buffer. That said, if you want something a little more robust, MPI does have rather extensive user defined datatype creation capabilities.

    I learned a little about these capabilities when I wanted to know how to send a struct over MPI while doing a school project. (I wanted to do things "The Right Way" (TM). ) However, the definition of MPI datatypes seemed a little too in depth for a simple school project so I ended up just sending the struct as a buffer which worked fine. For a project that is a little bigger, and needs to be a little more robust, I would suggest learning how to create MPI datatypes. Funny thing is, when looking up this stuff on Google now, I'm finding better resources on sending structs over MPI than when I had my Parallel class last spring, dern it!

    Google search

  8. Re:Help me out here on Reintroduce Megafauna to North America? · · Score: 2, Informative

    Where I'm from, several people have lost pets to those things. While it's true that pumas (we call them mountian lions here) are generally afraid of humans, the ones that live close to populated areas tend to get too used to humans and lose there natural fear of humans. This is when they can become dangerous. Several people in Colorado have been attacked by them over the years.

  9. Re:Premise is nonsense on Modern History of Cryptography Techniques · · Score: 1

    Yeah, I was thinking the same thing. I remember learning in my Cryptography class back in school that DES wasn't considered very secure by many cryptographers back in the 80's and how surprising it really is that it took so long to come up with another standard. In fact, the known insecurity of DES is the reason that people started doing DES multiple times: 3DES. Here is some more information on 3DES: http://en.wikipedia.org/wiki/3DES and http://kingkong.me.berkeley.edu/~kenneth/courses/s ims250/des.html

  10. Re:Spammers fate on Spammers on the Run · · Score: 2, Interesting

    But wouldn't it be better to make spam unprofitable by creating better spam filters? This way so very few people even see the spam that no company will even invest in this sort of marketing anymore.

  11. Re:.NET is on the rise, but Functional Programming on Atos Origin Predicts Open Source Landscape · · Score: 1

    javascript != functional programming? What does that mean? You can't do functional programming in javascript? Javascript functions are first class objects. Javascript supports closures. Now, javascript isn't a pure functional language, but neither is Lisp or ML (or any of their dialects), but nobody claims Lisp or ML are not functional languages.

    Oh, I get it. Javascript isn't a functional language because Wikipedia doesn't mention it as a functional language. Yeah, that must be it.

    Disclaimer: I don't program in javascript and I don't know javascript very well, but I do know that javascript supports the functional paradigm rather nicely.

  12. Windows Update on Internet Security Warnings · · Score: 1

    I set my Windows update to manually update (too paranoid?) but anymore it might just be better to set it to update automatically so I don't have to keep checking on security vulnerabilities. I don't run Windows enough for it to be a big problem, but still.

  13. Three easy steps to fame. on Podcasting · · Score: 2, Insightful
    1. Find something that people have been doing on the internet for years.
    2. Syndicate it with RSS.
    3. Give it a catchy name.
  14. Re:PHP's effect on Linux's reputation. on Spring Into PHP 5 · · Score: 2, Funny

    So while Linux advocates often promote the use of PHP for developing webapps on Linux, PHP is starting to become more of a liability. Every site running Linux and PHP that gets defaced due to terribly written PHP scripts reflects very poorly on Linux's public image. Now I have to ask: what is the Linux community willing to do about this problem?

    I know! Linux advocates should promote the use of PHP for developing webapps on Windows!

  15. Re:Federal Censorship Committee on Another View of the FCC and Spectrum Scarcity · · Score: 1

    Let me guess: YANAL (You Are Not A Lawyer). The US court system is not this clear on the issue of free speech, and free speech is open to a lot of interpretation. You even admit this is the case for yelling "Fire" in a theater or slander but you conveniently choose to not mention another case where speech is not free! Either you're misinformed, or your purposefully being deceitful. According to this:

    The following areas have NEVER been protected by the Constitution. There are NO barriers to government interference or regulation. The ONLY constraints on government are that officials must be engaged in a legitimate purpose (doing their duty), the law to be enforced must not be too broad or vague (void for vagueness), the law must be content neutral (not impinging upon a suspect class), not intervene before the fact unless extraordinary circumstances exist (prior restraint), and not have a "chilling effect" (which makes people fearful of engaging in legitimate activities).

    (1) OBSCENITY

    Despite having grappled with the definition of this term, the Court has consistently ruled that obscenity is not protected. The English common law definition is "anything which depraves or corrupts minds open to immoral influence." For many years, this definition was taken to mean that the crime of obscenity consisted of distributing material to youth which might have an immoral impact. To this day, anything directed to, or involving youth (such as child pornography) brings down a quick, suppressive response from government. Organized pornography didn't start in America until the 1950s, and that's when the Court started to get involved, and it left a lot of power in the hands of juries to decide.

    So, in short, Freedom of Speech != Freedom to be Vulgar. It depends on whether the court determines if your particular vulgarity is obscene or not. Don't be surprised if some particular court determines that some particular vulgar speech is obscene. I however wouldn't be surprised if they ruled it wasn't. It just depends on the judge and what they feel is obscene.

    Note: This stuff is open to a lot of interpretation! What one judge feels is obscene, another may feel is not, hence why judges rarely make the same types of rulings, and also why if one judge rules against you, you can just appeal until you find a judge that rules for you. You'll eventually find what you want unless you can't appeal to a higher court.

  16. Re:Great news for those not in the top percentiles on Google and Yahoo Creating Brain Drain? · · Score: 1

    I agree. When I first read the article I was thinking: "What?"

    I just graduated from college, now I'm not trying to be arrogant, but I don't consider myself to be a "B" grade software engineer. There were several guys in the computer science department at my university that I would consider very intelligent, creative people. I know they would say the same thing about me. I'm pretty sure that there are others who are just graduating that are not going to Google or Yahoo not only because they are not well known yet but maybe some of these engineers don't want to live in California. I don't find California very attractive. Nothing wrong with California, just my taste. Some people consider a lot more than just the company when choosing a place of employment.

  17. Re:Don't Interrupt on Preview of KDE 3.5 · · Score: 1
    They see a window show up telling them what to do and the second that another OS doesn't do exactly that they don't feel comfortable.

    People feel uncomfortable whenever a dialog box pops up asking them to take some sort of action. I've seen it before, somebody puts a cd in the drive, and this dialog box pops up asking them what to do, and they have no idea, they look confused and are afraid to do anything, for fear they might break somthing. If you access your hard drives and floppy drives by going to my computer (or something equivalent), then why should it be any different for another type of storage medium?

  18. Re:Make file on Ant - The Definitive Guide · · Score: 1

    Yeah, since xml is so great and we are not creative enough to develop a better format than xml or makefiles.

  19. Re:Flawed logic on The Future of Firefox · · Score: 1

    Yeah, but most OSX users are ordinary people, Windows OTOH has a lot of corporate users. Many corporations don't even want to upgrade to Windows XP when Windows 2000 works just fine. Many corporations will wait until they absolutely have to upgrade to Longhorn.

  20. Re:teh forumla on DRM Advocate Violates DRM · · Score: 1

    Actually this is a good point. In the USA, at least, laws are not created to prevent people from taking part in certian activities/behaviors, but rather they are created for the expressed purpose of making it possible to prosecute someone for those behaviors. You can't really prevent people from behaving in a certain way, you can only create the necessary laws that allow that person to be prosecuted for that behavior. (People still commit murder, steal, commit assult, etc.) Likewise, I'm sure most companies realize that it is nearly impossible to actually prevent people from copying digital material. ("If you can hear/read it...") What DRM does is create the framework (along with the DMCA) to make a civil suit against copyright violators easier. ("He/she didn't copy by accident, the material was protected so the copying must have been intentional.") The question is: "Are digital media creators going to utilize DRM that is extremely difficult to break or not? If not, then are they going to pursue a civil suit against an individual who broke the DRM for fair uses (backup, something broke, etc...)? Maybe what we need to be doing isn't fighting DRM, but pushing for laws that make it lawful to break DRM for specific purposes (backup, something broke, etc...).

    What do you think?

  21. Re:Need a starchart? on Three Planets Racing this Weekend · · Score: 1

    Or, if you want, you can try XEphem a program written for X-windows (and hence will run on Linux!). It is free (as in beer) for non-commercial use. The license isn't GPL or anything like that, for you purists, however, when it comes to ephemeris software, I don't think there are enough options out there to be too picky about the license.

  22. Re:MySQL on Data Crunching · · Score: 2, Insightful
    DBAs and database developers do not consider MySQL a database.

    You have got to be kidding me. Of course MySQL is a database. A database is simply a collection of data organized so that a computer program can access pieces of that data, something a MySQL database certainly does. This would make MySQL as a whole, a DBMS (DataBase Management System), as it is a collection of programs used for managing a database. Now, Is MySQL a RDBMS (Relational DBMS)? Well, that depends on your definition of RDBMS. If you define a RDBMS as a DBMS that stores it's data in the form of related tables, then MySQL is most certainly a RDBMS. However, if your a strict follower of Codd, then you might not consider MySQL a RDBMS, as it doesn't follow all of Codd's rules. However, under this strict definition, no SQL DBMS is a RDBMS, as SQL breaks some of Codd's rules.

    Perhaps what you meant to say was: "DBA's don't consider MySQL a true SQL database." (Or at least until very recently, as MySQL has gained a lot of functionality.)

    Don't get me wrong, I don't disagree with you completely. While I believe MySQL has is uses, I also believe there are many applications where it just shouldn't be used. I just think that we need to be a little more careful when we choose our wording here, so we don't sound like we're trying to flame, or even worse troll. (By the way, I don't believe you were doing either. I'm sure that when you said database, you were thinking SQL.) MySQL is a database, it just is (was? I'm not sure about the newest version) not an SQL compliant database.

    References:

    • http://en.wikipedia.org/wiki/RDBMS
    • http://www.webopedia.com/TERM/R/RDBMS.html
  23. Re:nano inflation on Nanotechnology To Replace Conventional CMOS · · Score: 1
    ...nanotechnology was about wonderful fantasies of small machines at nano-level assembling molecules or even medicines. Too bad that simple physics prevent this from becoming a reality (the resistance of air at nano-level is too large, for example).

    I disagree (not with your definition of nanotech, but with your statement that it is impossible). There are actually examples of "nanotechnology" in nature, such as the cell. There are plenty processes whereby molecules are built up piece by piece in the cell. In fact the cell is very complex and many parts of the cell behave like little machines. We might not currently be able to do what we imagined at first, but I wouldn't go so far as to say that nanotechnology is impossible, just a lot more difficult that we thought at first.

  24. Re:Modularity and Stability on X.org X11 Server Release 6.8 · · Score: 1
    After all, things tend to break around the edges.

    I'm not sure I agree with this statement. Are you sure "things tend to break around the edges"? I would argue that correctly written modules only break internally (correctly written in terms of the interface, not that the internal code of the module is correct).

    The idea that modularity lends to more stability comes from the idea that smaller pieces of code are easier to debug. Modular code allows the developers to focus on the module they are working on decreasing the likelyhood that a developer will make an error. During testing the module is tested to make sure that given certian inputs, it returns the right outputs. If there is an error, you have the error already narrowed down to the module your testing. For programs with hundreds of thousands of lines of code, reducing work to modules with ~500 lines of code helps a lot. As long as the modules are well written things should work fairly well when they are tied together. Think in terms of mathematical functions: only input and output. There is no mucking with global variables. This is what makes functional languages so cool.

    Unfortunatly things don't always turn out that way. Sometimes global variables are needed to simplify the code thus breaking the mathematical function model and causing things to sometimes break unexpectedly.

  25. Re:Would that rebirth include... on Cold Fusion Back From The Dead · · Score: 1
    Quote:
    Unfortunately, that is precisely the hallmark of junk science: experiments that appear to show amazing results that cannot be explained by conventional theory and as a result the exact requirements to duplicate the experiment are unclear. (emphasis mine)

    I dissagree. "Experiments that appear to show amazing results that cannot be explained by conventional theory" are the experiments that result in great advances in physics (Michelson-Morley experiment, Rutherford's Gold Foil Experiment, etc). Granted I believe that your point holds in most cases (especially when results are not easily reproducable), but we need to be very carefull when looking at any experiment not to be either to too skeptical or too believing. I believe that there is a very fine balance that every scientist needs to maintain when viewing the results of others.