Re: Reddit rewritten in Python



Friedrich Dominicus <just-for-news-frido@xxxxxxxxxxxxxxxxxxxxxxx> writes:

> Peter Seibel <peter@xxxxxxxxxxxxxxx> writes:
>
>>The main one is that by running your software on lots of different
>>platforms from the very beginning you smooth out portability
>>problems early. Mostly I'm thinking of things like developers making
>>assumptions based on the platform they are developing on that are
>>not warrented based on the specifications of the language or library
>>they are using. In my experience sorting these things out earlier,
>>while not free, tends to lead to more robust software down the line.

> Well that might be but if you are not forced by the outside, why
> should you care? It's better to spend the time on the platform you
> know and write "good" software. I can not see any evidennce that
> Portability was a requirement.

It's true that if you absolutely know what platform you're going to
support, any work you do to support other platforms is wasted
effort. However, in my experience you rarely know that 100% when you
start. And by just having a bit of heterogeneity in development
platforms you are forced to deal with platform differences a little
bit at a time at relatively low cost; when you figure out what
platform you really need to support it turns out to be easier and your
software is more robust than it would have been if you developed for
only a single platform.

This is *especially* true when writing multithreaded code--different
OS's and even diffenent language implementations or VMs can have
different enough threading mechanisms to expose different concurrency
bugs. If you only run on one platform bugs can lie dormant for longer;
then when circumstances force you to add a new platform these dormant
bugs manifest themselves and you kill yourself trying to track them
down. If you had used a mix from the beginning, these bugs would have
been discovered sooner and the code would be more correct and thus
easier to adapt to new circumstances.

-Peter

--
Peter Seibel * peter@xxxxxxxxxxxxxxx
Gigamonkeys Consulting * http://www.gigamonkeys.com/
Practical Common Lisp * http://www.gigamonkeys.com/book/
.



Relevant Pages

  • Re: I5 and 2009 questions etc.
    ... of the platform. ... IBM tanked like the car industry what would become of IBM and the ... deal with no extra costs. ... developers interested in creating a server or a virtual machine. ...
    (comp.sys.ibm.as400.misc)
  • Re: Authentication failed suddenly
    ... >> off on such a platform, ... the developers don't consider it a fundamental part of the distribution. ... >The bugs are platform compatibility bugs. ... bugs and report them - rather than rambling in public fora ...
    (comp.security.ssh)
  • Re: Fine grain select locking.
    ... for developers without local hardware. ... more than one type of platform. ... core hardware as well. ... that while SMP systems gain performance that we don't adversely impact ...
    (freebsd-arch)
  • Re: Too funny MS ad in Visual Studio Magazine...
    ... were a few developers that couldn't see how great that move was and were ... Like maybe 50 years in any other industry. ... somewhere in the middle of that MS moved from 16-bit computing to 32-bit ... MS has dared to suggest that platform was aging a wee bit and has ...
    (microsoft.public.dotnet.general)
  • Re: Windows Vista - worst OS yet?
    ... both the hardware and software level. ... applications developers willing to sign all the NDAs, ... to be hostile to he rights of the protected content on the platform. ...
    (sci.electronics.design)