Thread: Web developing languages

  1. #46
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by ItzBlue View Post
    Thank you guys for your opinions, didn't realize I would create a warzone. :P
    No worries. Keep posting and have fun.

    And don't you worry too much. This place is moderated. The board moms will make sure we kids don't overdo it. For a real warzone you need to meet at usenet. But Yarin won't go because he's a bastard and thinks too much of himself. Phantomotap will go but will be drooling and shaking too much with excitement to say anything coherent (even the O_o won't come out right). And Elysia doesn't know what usenet is or how to login without his Microsoft account.

    I'm the only one you can trust for a good old fashioned flame war.

    Peace.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  2. #47
    Unregistered User Yarin's Avatar
    Join Date
    Jul 2007
    Posts
    2,158
    Quote Originally Posted by Mario F. View Post
    But Yarin won't go because he's a bastard and thinks too much of himself. Phantomotap will go but will be drooling and shaking too much with excitement to say anything coherent (even the O_o won't come out right). And Elysia doesn't know what usenet is or how to login without his Microsoft account.
    So modest, leaving yourself out...

    And Mario won't go because a post calling his sexual orientation and his mother's faithfulness into question may get through one of the moderated groups and drive him to commit sucide.
    Last edited by Yarin; 01-17-2015 at 08:41 PM.

  3. #48
    Registered User MutantJohn's Avatar
    Join Date
    Feb 2013
    Posts
    2,665
    Lol you guys.

  4. #49
    Registered User
    Join Date
    Dec 2014
    Posts
    18
    I really like this community a whole lot more now.

  5. #50
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    To be fair, usenet is a place no one should want to be. I remember a 10 page discussion on the proper way to write a for loop, and it's not like the content was all worth reading. After about page 5, maybe earlier, they'd lost my attention.

    It was something like how these things are different.
    Code:
    for(std::vector<int>::size_type i = vec.size(); i >= 0U; i--) ... 
    for(std::vector<int>::size_type i = 0U; i < vec.size(); i++) ...
    IIRC they knew that one of those would process the vector backwards but that was almost unimportant compared to the other points raised - such as repeated calls to member size(). Though, I do remember that one person pointed out correctly that the second version is more correct than the first if the container changes size in the loop.

    Yeah. It was that sort of discussion.

    I didn't participate... I think.

  6. #51
    Registered User Alpo's Avatar
    Join Date
    Apr 2014
    Posts
    877
    Quote Originally Posted by Yarin View Post
    I can't Accept-Language like that.


    We do Expect a wide Range of opinions, I just hope I don't Age too much while reading your opinions while munching on a Cookie.

    This thread may not be a good place to make a Connection with people, maybe you should Retry-After this thread Expires.

    Silly brony, don't you know, the Host won't give you the Authorization to you delete your account.
    Way to socket to 'em. I can't help but listen and then accept what you say. My attention only fork'ed a few times while reading. I did send a checksum to you for this service, but the mailman's time to live might not be sufficient for you to receive it. :P
    WndProc = (2[b] || !(2[b])) ? SufferNobly : TakeArms;

  7. #52
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by whiteflags View Post
    It was something like how these things are different.
    Code:
    for(std::vector<int>::size_type i = vec.size(); i >= 0U; i--) ... 
    for(std::vector<int>::size_type i = 0U; i < vec.size(); i++) ...
    IIRC they knew that one of those would process the vector backwards but that was almost unimportant compared to the other points raised - such as repeated calls to member size(). Though, I do remember that one person pointed out correctly that the second version is more correct than the first if the container changes size in the loop.
    I'm not sure the first one is correct since size_type should be unsigned, which means the loop goes down to 0, loops, reduces i to unsigned max, which is greater than 0 and continues forever.
    As for the second one... calls to .size() actually matter! I did a quick test on MSVC, and it added an overhead of about 20% on optimized builds even with aggressive inlining, so they were right about that. Cache the size if it is not expected to change.
    As for backwards or forwards... it doesn't seem to matter. The processor prefetcher is good enough to figure it out, I guess.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  8. #53
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    While is not a For. But For is For a While.
    If you don't Trust me, Write it on a File
    And This will Play you For a Smile.
    And If you Save it on your Store
    Make it there is no Backdoor
    Because If you Run a For For a While
    It will want to Run some more.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  9. #54
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    Quote Originally Posted by Elysia View Post
    I'm not sure the first one is correct since size_type should be unsigned, which means the loop goes down to 0, loops, reduces i to unsigned max, which is greater than 0 and continues forever.
    Mmm, well I could be misremembering what was actually wrote - though I admit it would have been better to use something signed. I don't remember.
    As for the second one... calls to .size() actually matter! I did a quick test on MSVC, and it added an overhead of about 20% on optimized builds even with aggressive inlining, so they were right about that. Cache the size if it is not expected to change.
    As for backwards or forwards... it doesn't seem to matter. The processor prefetcher is good enough to figure it out, I guess.
    That you can be so succinct is why the length of the discussion surprised me.

  10. #55
    Ticked and off
    Join Date
    Oct 2011
    Location
    La-la land
    Posts
    1,728
    @ItzBlue, my suggestions:

    • Make sure you can create HTML pages (I recommend HTML5 and CSS3 in particular) by hand

      Your scripts will have to generate HTML content, and being able to do it by hand makes it easier. CSS is practically required for any complicated layouts. Use validators to make sure your pages conform to the standards, then check with different browsers (there are web services that help with that) to see if they render your pages correctly.
    • Learn Javascript

      Even if you intend to do only server-side scripting, it is very useful to know what and how stuff can be done in Javascript in the client browser.

      Also, due to obnoxious advertisements, many users block Javascript by default, so being able to fall back to reasonable behaviour (say, losing any nice visual transitions, but none of the functionality) is sometimes enough to convince users to un-block ads on your sites. "Don't be a dick" can be a commercial advantage, even if the marketing people are too dysfunctional to understand it.
    • Learn the details of the HTTP protocol

      Mostly, server-side scripts only need to worry about HTTP protocol details such as cache control and page aging, but having a good overall picture of what is transmitted and how the system works, definitely helps in tracking down bugs and causes of other problems.
    • Get a basic understanding of TLS/SSL encryption and web security

      This involves understanding what a certificate is, what a certificate key is, what a certificate chain is, what is a certificate authority, and so on. At minimum, you should know about the typical scenarios -- man in the middle, eavesdropping, spoofing, and so on.
    • Read up on character sets, filtering, and escaping

      Especially USians seem to think that there are only 26 letters. Which is only true for ASCII. However, we've got this fancy Unicode nowadays, and a very nice character set called UTF-8, we can use to support all kinds of writing systems. It's a bit weird when you get to know it, but it's surprisingly easy to work with.

      When data is saved or retrieved, there are usually certain characters or character combinations with special meaning. I'm sure you've heard of SQL injections? Bobby Tables? They work, because the programmer assumed the user would not use an SQL separator character in the inputs. Avoiding such issues is simple -- you can either filter them out, detect and reject input containing such, or use escape sequences or quoting to defuse them (make them non-special). Learn how to do those.
    • Learn about POSIX access control model

      Those who learn web programming on the Windows platform, often get really frustrated when porting their web application to a POSIX platform (Linux or FreeBSD or OpenBSD etc.). The typical solution is some variant of chmod 0777 * , which is akin to going to a dark alley, pulling down your pants, drinking a bottle of hard alcohol, and expecting nothing bad to happen.

      (It does not help that even the Apache SuEXEC security model is braindamaged -- by default allows script drops -- but it seems like very few web programmers have even a rudimentary grasp of the POSIX file access model, and on how to leverage it to make their applications secure. It's not hard, but learning to do it right is. )
    • Have fun on multiple architectures

      One of the best features on the web is diversity. We know that monocultures are bad -- just look at bananas; if we're unlucky, we might not have them in our stores in a few years (the resistant variants do not transport well). Use the diversity as a source of fun, and as a source of learning.

      One good way to do that is to use virtual machines. You don't need a top of the line machine, especially if you use a non-graphical OS on the virtual machine. You might wish to add RAM to your machine, though; I typically give 500MB to 1GB to each of my virtual machines to run with, and that's plenty enough for a Linux-Apache-PHP/Python stack with a database (MariaDB, Postgres, etc). If you already run Linux, try FreeBSD or OpenBSD instead in a virtual machine. Put your server on the virtual machine, and you can use your main OS browser as if it was on a remote machine. (As far as I know, all operating systems have good virtual machine "players" you can use for this, for free.)

      Try out different languages; you might find one that fits your needs best. Play with the online tutorials -- I think all web scripting languages have pretty good tutorials online, if you just look for them. Learning the basics of multiple languages (actually, different types of languages) in my experience helps widen your viewpoint, producing better programs as a result (although not everyone agrees with me).

      Don't get locked up on an idea or a language; keep your eyes and mind open. Being curious and open-minded will let you see more of the whole, before you decide on a comfortable niche to get better in.

  11. #56
    Registered User
    Join Date
    May 2009
    Posts
    4,183
    I was hoping to find a programing language called "Spider" because I thought it would be a "great" Web development language.
    But, I failed my Google skills are not good enough or no one has created the obvious language for doing web programming.

    Edit: I gave up to soon. Getting Started | Spider

    Tim S.
    "...a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are,in short, a perfect match.." Bill Bryson

  12. #57
    Registered User Alpo's Avatar
    Join Date
    Apr 2014
    Posts
    877
    What do you guys think of the new HTML5 elements? I learned HTML and JavaScript as a kid, and have missed it for a while. The new canvas tag looks pretty cool, it's looks like having your own window with a context to draw on. The way JavaScript's scope and 'classes' work would probably seem alien to me now, but it was a lot of fun.
    WndProc = (2[b] || !(2[b])) ? SufferNobly : TakeArms;

  13. #58
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by Alpo View Post
    What do you guys think of the new HTML5 elements?
    My opinion is probably not very popular in the web development circles. I miss the good old plain text/image pages and I'm already starting to miss plain old HTML 4/CSS.

    HTML 5 is cool, I guess. Nice for those websites where pizzaz matters. I dunno... Disney, Britney Spears. And gaaaames of course. But for a whole lot of what we normally do on the internet HTML 5 is just another surplus technology that nonetheless everyone and their mother wants to put in their website and, usually, do things to it that ruin the whole thing. Online shops are probably the worst offenders (as are many news services). Contrast that to the beauty and simplicity of a text/image website (courtesy of stahta01) that knows exactly where it stands and doesn't care if people like their site and only cares if people use their site.

    HTML5 is Flash going official. Sure, there's cool technology (not without its criticism, more criticism, and security warnings). It has the power to make impressive application-like websites and promote SaaS like no other technology. But the truth is that, just like with Flash, people only seem to want it to make pretty cute pink websites. Boring!
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  14. #59
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    I don't know all that much about html5 to be honest but I like the new container tags like <video> and such, and the free codecs to go with them. The web needed embedding multimedia made simpler for a long time.

  15. #60
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by whiteflags View Post
    I don't know all that much about html5 to be honest but I like the new container tags like <video> and such, and the free codecs to go with them. The web needed embedding multimedia made simpler for a long time.
    That is true. I suffered through a blog I maintained until a couple of years ago when I started to want to include screencasts. HTML5 multimedia containers are a large leap ahead.

    The supported codecs on the other hand are the current problem. And it doesn't look like it will be solved anytime soon. It's better described in the wikipedia entry.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Developing GUI app with C
    By elf1984 in forum C Programming
    Replies: 2
    Last Post: 10-23-2008, 09:58 AM
  2. Need help developing an application
    By Afrinux in forum Windows Programming
    Replies: 24
    Last Post: 03-16-2006, 08:44 PM
  3. what languages are fading ? what languages remain ?
    By dot_rain in forum Tech Board
    Replies: 32
    Last Post: 03-04-2004, 09:25 AM
  4. Further developing C for the web
    By bjdea1 in forum C Programming
    Replies: 24
    Last Post: 12-25-2002, 01:49 PM
  5. Developing for platform..
    By civix in forum A Brief History of Cprogramming.com
    Replies: 7
    Last Post: 08-22-2002, 01:45 PM