Slashdot Mirror


User: ACORN_USER

ACORN_USER's activity in the archive.

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

Comments · 98

  1. Prolog on Reverse Engineering Large Software Projects? · · Score: 1

    If that's the task, you probably want to use DCG rules in Prolog. :)

  2. I'm assuming that you have the source as a guide on Reverse Engineering Large Software Projects? · · Score: 2, Informative
    My assumption is that you're to reverse engineer the software, but have been given fragments of the source as a guide, yet still have to show your methodologies so as to prove that you didn't just re-write the source.

    I'd start buy actually reading the source - building it if you can. Run profilers on it and try to get some kind of visual representation of the underlying code tree. If you have source, try using something like DOXYGEN to autogen some documentation (and structure) out of it. Someone mentioned Rational - you can get a trial license. Try to understand what the code does. For the most part games are straight forward, in that you have objects that have specific behaviours. You can try to establish the object hierarchies and see if you can redefine these to make more sense - or just be different.

    For the fragments of source you don't have - try using tools such as truss to track flow of what is going on. GDB is your friend and you probably want to try running it through the debugger - especially if the extracts you were given were compiled without stripping the symbols. nm is also another useful one at trying to get an idea of the symbols in your binary and establishing 'from meaningful names' what on earth goes on inside.

    Push your binaries through a disassembler like ldasm or datarescue - win. NASM also has a disassembler. Try and get a feel for what is going on.

    Now comes the hardpart - it's not called reverse 'engineering' for nothing. You've done the reverse bit. It's now time to engineer a solution which shows that you've gone through the 'reverse' bit. It can be y our view on how the code should work. Don't be affraid to reuse resource files/bitmaps, etc. That's allowed. It's the code which counts. You'll probably find that the assignment gave you something which was sub-optimal, in either design or processing - or both. It's your turn to write it the way which it should have been written. I'll leave the 'team dynamic' to you. Don't let one person have all the fun. Probably you - it's good to give others a chance. See what people are intersted in and allocate the work load. Just be prepared to fix everyone's bugs the night before submission - it's not so bad - it's 'fun.'

  3. 23:59 on Dec. 31 2099 - GoogleBot is SelfAware on 300 Years to Index the World's Information · · Score: 1

    Don't be so sure. Let's see. Google teams up with Nasa. Google involved in searching human-genome. I'm sure that the Google Research Centre also has a spin on Mind Transferance. 300 Years? That's nothing in the lifetime of a sentient google-bot.

  4. It all depends on what you call information on 300 Years to Index the World's Information · · Score: 1
    There is a lot of none-sense out there and duplicate information which would be redundant to consider more than once - or at all. What I foresee is a trip further down the road - well we are talking about 300 year time scales - where information is represented more by some kind of semantic network - more of an auto-classifying semantic web - than the current textual level representation. Interpreting meaning - or meaning type - will eventually be key to mining out what is really worth indexing.

    Google are harvesters of everything from geographical to academic info - what I'm suggesting is that the *.google idea be broken down into the */*/*/.google. Hell, you might even be able to subscribe to data which is published as pointless/statements/indexing/future/google and one day get back this page! That said, if I were a clever indexing bot of the future, I would advise myself not to index this particular post.

    Perhaps Google and its cache are really the start of Megadodo ( google -> first-person -> megoogle -><dyslexia> -> megooddle -> <illiteracy> -> megadodo )Publications, one of the great publishing houses of Ursa Minor Google-Beta and its Hitch Hikers Guide to the Galaxy. All wrapped in pretty e-ink digital paper. Has there ever been a better example of pruning redundent data in the whole history of the world than:

    "Did you mean Ear wigs?

    Search Results:

    1 - Earth - Mostly Harmless"

  5. The press release: on Oracle Acquires Innobase · · Score: 1
    Hmm, the worrying bit is about the terms for re-negotiation with MySQL not being disclosed:

    Oracle Announces the Acquisition of Open Source Software Company, Innobase - Oracle Plans to Increase Support for Open Source Software

    October 7, 2005, Oracle Corporation announced the acquisition of Finland-based Innobase OY. Innobase is the developer of discrete transactional database technology, InnoDB, that is distributed under an open source license. "Oracle has long been a supporter of open source software such as Linux and Apache," said Charles Rozwat, Oracle's Executive Vice President in charge of Database and Middleware Technology. "Innobase is an innovative small company that develops open source database technology. Oracle intends to continue developing the InnoDB technology and expand our commitment to open source software. Oracle has already developed and contributed an open source clustered file system to Linux. We expect to make additional contributions in the future."

    InnoDB is not a standalone database product: it is distributed as a part of the MySQL database. InnoDB's contractual relationship with MySQL comes up for renewal next year. Oracle fully expects to negotiate an extension of that relationship. Terms of the transaction were not disclosed.

  6. SOA's on Creating .NET C# Applications for Linux · · Score: 1
    MS developers can move right over...?

    I'd rather they stayed away.

    To be honest, as far as platform independence goes, I think that Java is really the way to go. I've heard whining over GUI's and native library integration. I think that development is moving to a point where legacy integration means something completely different. Legacy applications should be exposable on a service bus, accessible from Java Land, .NET, Perl or whereever. If you need to integrate with C libraries on your platform, you have JNI - but that's ugly. It's ugly in C# and it's ugly in Java. We should change the way we view code. Mono on Linux is a good idea, if you want to write C#, but if you're after code which is truly universal from platform to platform, you're really looking at Java - or Perl6. If you're looking at writing the best solution, in the best langauge, on the best platform for that specific task, you're should be exposing your applications over a service bus. I don't care where it runs or what it does, as long as it fulfills the contract of its service.

  7. Well, that's 50% of Enterprise out the window on MySQL Moves to Prime Time · · Score: 1
    ...except for Java and XML integration

    Unless the vulcans can see some logic in this, I'm not sure that the Enterprise will be MySql'ing for a while. That said, I've often advocated and used MySQL in large organisations. It's something which you can get away with for anicilary applications - and to be honest, I've used MySQL through Java, without any issues. Further, shouldn't the XML layer be higher up the hierarchy, being interfaced with the DB further down your code tree? Perhaps I'm still flying around with Captain Archer and don't really get why MySQL is poor on Java and XML integration?

  8. It boils down to lifecycles.. on Optimizing Development For Fun · · Score: 1
    Like the human life cycle, you've got to take dump now and then. The same goes for software, in and out of the workplace, where in addition to writing exciting applications, there is often a lot of boring-to-death-work, unless you're especially lucky.

    What I've found though, is that if you go into the work place with some 'higher-order order' in mind, and try to unify everything you do into one clean infrastructure, the fun does linger. You should have a greater vision to which all other projects must conform. Yes, you do still have to write boring bits of code but there is a nicer feeling all around, together with a drop of professional pride on every line written. This over-all vision has taken many guises - clean code trees, re-use, falling into a meaningful code hierarchy, writing code which is more service driven. As you advance, your higher level vision also grows. With it, you'll find greater professional pride, better code, more arguments with management and a bigger head. Primitive and closed minded environments can be a hinderance, but you have to persist. I do agree though - if you can keep the 'fun' alive, it does result in better code. What we shouldn't forget is that it's not 'all fun, all of the time.'

  9. Stop spoon feeding the morons on Taking On Software Liability - Again · · Score: 1
    My thoughts exactly. Software is hardly comparable with bridges or cars. There is no guarantee on the run-time or build-environments being identical between any two pieces of software. There is, of course, the option seen in commercial software, which is where they indemnify themselves against a particular platform build. This kind of stands to reason, since most software, free and otherwise, will at lease let it be known that it has been tested against certain builds. If you bloat beyond that build, well you're on your own. That said, if I share a piece of software, it's on the users shoulder to make the call on whether he or she wishes to use it. If I provide my sources then it is on his / her shoulder. If he chooses to work with my alpha, it's on his shoulders.

    It's kind of like the BBC story, of the guy who got arrested for using an open wireless connection. There was no mention of the moron who left his wireless connection open - probably without a clue as to what he was doing. If you have a gas cooker and blow your house up - it's your own fault. If you're going to use technology, you should know how to use it and what you're doing. If I provide a disclaimer, you should be doubly sure that you really want to install my software. If not, go out and buy an off the shelf product from a software house which accepts liability for any cock-ups.

    The journalist had worked in software for seven years. Perhaps the reason he quit development is because he couldn't bare the reality of the fact that complex software implies bugs. You're not going to get around them by clicking your heals together and taking the twister to court. It's a consequence of humans writing complex software which has to run in dynamic and differing environments.

  10. Hmm. Capital 'L?' on Why Students Are Leaving Engineering · · Score: 1
    people smart enough to do the math and motivated enough to at least take a bite at the engineering apple, but turned off by the overwhelming coursework, low grades, and abysmal teaching

    Lazy so, and so? Light weight? Lemon? Letterman? Lady-boy? Life-haver? Liberal Artist!

  11. Freedom on Zimbra Collaboration Suite Launched · · Score: 1
    I work in big evil banks. In these big evil banks, I fight very hard to obtain less evil environments in which I can be productive without having to spend my days arm wrestling with Bill Gates. A couple of years ago I went on a quest to find a mail client which spoke Exchange's protocol ( imap and pop were not supported by the server ) and would run on a sparc. I ended up writing a script which interfaced with the outlook webmail client that was available.

    It's about choice and the platform you run. If you 'have' to implement an exchange server - you're no longer forced to use a bluescreen-able platform.

    Choice is good.

  12. Might not be so bad on Palm Teams With Microsoft for Smart Phone · · Score: 1

    I'm a Palm aficionado - if I can spell it this way - but recently got seduced into buying a cheap Axim running Windows Mobile. I have to admit to being shocked at the stupidity of the UI placed before me. It's the most convoluted and senseless piece of senselessness since Microsoft's desktop platfrom. That said, I'm holding a mighty bit of kit in my hand and a platform which is quite heavily supported in terms of software. If I were to step off my anti-MS pedestal for a while, I might be willing to admit that it has potential. OK, we're talking about an old dog having the potential to lean new tricks - then again the old dog has now teamed up with scooby-doo. Given a couple of Scooby snacks and some actual cooperative design, I really think that the WMobile platform might be able to evolve into something which is as usable as it is abundant. Let's just hope that this turns into something more two-way than simple a piece of palm kit with a substandard OS.

  13. State of the mellons on State of the Onion 9 · · Score: 1

    I'm just hoping that Perl 6 comes with a brand new edition of Learning Perl, complete with Sponsorship from Hooters. Randle Shwartz clearly knows his circular arrays. I'd love to hear his State of the Onions address, complete with gimp'ed role-models.

  14. And why was that not considered funny? on KDE Running on Mac OS X · · Score: 1

    boom boom.

  15. Cool! But why stop at a wm in wm - what of vm's? on KDE Running on Mac OS X · · Score: 1

    Why don't we run virtual-pc in os-x, running Fedora, running bochs with windows 95, running RISC OS on an Archemedes emulator, running an XT emulator, running DR-DOS, running tetris?!

  16. D OXYGEN on Generating API Documentation? · · Score: 1

    Agreed. I've used DOXYGEN, Javadoc and perldoc extensively for documentatoin. The beauty about the first two is that if your code makes sense and you haven't bothered to inline any documentation, you still end up with a 'GOOD' documentation detailing your code hierarchies, methods and accessors. That's the automagic you're after. Not sure if it'll support VB though.

  17. Re:Easy Peasy.... on Race to Linux Project Announced · · Score: 1
    This is the beauty of the windows platform. Wheather it dl's and installs will depend on how grumpty your OS is feeling. Or how cheesed off it is with all the other apps you have installed.

    Well, good luck.

  18. Indeed. on How About a Nice Game of Global Thermonuclear War? · · Score: 1
    In the words of Joshua, as spoken to David [ hmm. that sounds biblical ]:

    "... the only move is not to play."

  19. Re:Get off it ScuttleMonkey on Comparing MySQL and PostgreSQL 2 · · Score: 1

    There's probably some under-the-contract-hood indemnity for MySQL in there. I can well imagine that they have a few linux boxes lying around.

  20. i fixed your cute fluffy kittens function on Underhanded C Contest announces winners · · Score: 1
    Got it to suid to 0 and called the function from my main method. I'm so clever. Give me a candy bard.

    Just compiled it and there we go.

    .. awww...

    ooo... urrr... shi .. no, not my
    pr0n...

    ####!!!###Kernel Panic

  21. That jacket might be handy... on Statically Charged Man Ignites Office · · Score: 1
    .. when your ibook is out of juice.

    Ok, I tried it. Ooops. Good thing I took out that service plan.

  22. And the IssuerTracker application crashed! on Race to Linux Project Announced · · Score: 1
    This is very funny. Whether or not this is a PR stunt, it's really quite funny. I downloaded the sample Issuer Tracker application and tried to install it on my windoze box. I was worried at noticing that I'm installing something called the "AP.NET Starter Kit," however I was amused on seeing:

    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
    0 An unhandled exception has occured
    0 in your application. .. blah .. blah
    0 ....
    0 Unknown error(0x80005000)
    0 ^ [Details] [ continue ] [ Quit]
    OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO

    Exception handling MS style. How verbose! I could learn a thing or two.

    Yes, a truly wonderful PR stunt!

  23. So the contest has started and I'm suspicious on Race to Linux Project Announced · · Score: 1
    I accept that registering with codeproject.com sounds fair. After all, I've got to register to participate, however this seems like an MS PR scam to me. I'm now forced to register with Microsoft's www.ASP.net site in order to download the application which has to be ported.

    "Let's compile a big database of loyal coders to seduce with even more of our .net crap. But what of all those corrupted Mono guys?

    hmm. I have an idea. A competition to make them all fall before us. Perhaps we can get them to sign up on our site and look at our beautiful examples of code - although, written by those traitors stolen from us by the Evil Google, these samples are Blessed by the Holy Bug Enhancer (tm).

    Hell, what about all the MS and infidel non-MS developers on the face on the Earth! All the .net and non-.net developers!

    Yes, we'll even get PHP developers looking at .net examples. And for a prize.. Well we'll give away an MS based platform. The X-Box! Yes, all those Linux programmers will have their brains fried with our games-console. I am the Bill and you will all be assimilated! Ha Ha!"

  24. Re:Well, I thought that I'd keep an open mind.... on Race to Linux Project Announced · · Score: 1

    Interesting, I just tried it with IE and it works. Nice one Bill!

  25. Well, I thought that I'd keep an open mind.... on Race to Linux Project Announced · · Score: 1
    .. and then I tried to register. Not that I write in C#, but I often debug C# code for ms-weenies. So, hurdle 1: register for a race number.

    Dumb arse ASP page gets stuck in an infinite loop of asking me to confirm I've read the rules and conditions.

    Click yes. -> Please confirm you have read the rules and conditions -> fine, I read them -> Confirm -> Please confirm that you have read the rules and conditions -> ooh, that's an interesting ad -> click confirm -> Please confirm you have read the rules and conditions -> confirm -> Please confirm you have read the rules and cond... -> bored now -> *Shoot window*

    When will I learn?