A short survey



  • @Ben L. said:

    @MiffTheFox said:
    @Ben L. said:
    http://nightgunner5.is-a-geek.net:1337/l4d2

    Port 1337? Please don't tell me that Go doesn't follow Node.js into the "mature httpds are boring, let's write our own" cult.

    The Go server is running on port 8482. This is just a nginx server that handles logging, etc.

     

    You should apply for DreamSpark and obtain a copy of Windows Server 2012 so you can learn to use the tools you'll be using in your job, rather than a toy OS created by an angry Norwegian.  IIS blows nginx out of the water any day of the week.



  • @drurowin said:

    @Ben L. said:

    @MiffTheFox said:
    @Ben L. said:
    http://nightgunner5.is-a-geek.net:1337/l4d2

    Port 1337? Please don't tell me that Go doesn't follow Node.js into the "mature httpds are boring, let's write our own" cult.

    The Go server is running on port 8482. This is just a nginx server that handles logging, etc.

     

    You should apply for DreamSpark and obtain a copy of Windows Server 2012 so you can learn to use the tools you'll be using in your job, rather than a toy OS created by an angry Norwegian.  IIS blows nginx out of the water any day of the week.

    I've actually tried to apply for DreamSpark. It's a piece of shit. Instead of giving you a useful download, they give you a file that can only be run with their "secure downloader", which basically equates to "ha ha you can't use this to download an OS because you need the OS to run the downloader". I'm not sure what job uses DreamSpark, but it's definitely one I'd want to stay far, far away from.

    Using IIS just to proxy to another server would be like using a flamethrower to light birthday candles. Because it would probably set your house on fire.



  • @Ben L. said:

    @MiffTheFox said:
    @Ben L. said:
    http://nightgunner5.is-a-geek.net:1337/l4d2

    Port 1337? Please don't tell me that Go doesn't follow Node.js into the "mature httpds are boring, let's write our own" cult.

    The Go server is running on port 8482. This is just a nginx server that handles logging, etc.

    My point still stands that Go has to be it's own server that nginx reverse proxies to. If Go was a mature language like Python, ASP.net (via Mono), or even fucking PHP, it would communicate directly with a mature httpd like nginx, Apache, or IIS over FCGI.



  • @MiffTheFox said:

    @Ben L. said:
    @MiffTheFox said:
    @Ben L. said:
    http://nightgunner5.is-a-geek.net:1337/l4d2

    Port 1337? Please don't tell me that Go doesn't follow Node.js into the "mature httpds are boring, let's write our own" cult.

    The Go server is running on port 8482. This is just a nginx server that handles logging, etc.

    My point still stands that Go has to be it's own server that nginx reverse proxies to. If Go was a mature language like Python, ASP.net (via Mono), or even fucking PHP, it would communicate directly with a mature httpd like nginx, Apache, or IIS over FCGI.

    Yeah, it would be nice if that was supported in the standard library. Of course, there's no reason to use fastcgi, since HTTP is just as fast. The reason for FastCGI existing is that things like PHP can't act as a server on their own. Go can.



  • @Ben L. said:

    Yeah, it would be nice if that was supported in the standard library. Of course, there's no reason to use fastcgi, since HTTP is just as fast. The reason for FastCGI existing is that things like PHP can't act as a server on their own. Go can.

    Among the benefits of a standard HTTPd are logging (as you said), third-party attack mitigation (such as Apache's mod_evasive), faster and easier to serve static content since you don't have to code up special handlers for it and it doesn't talk to the runtime at all, ability to mix different technologies (like legacy PHP code being phased out by ASP.net), much more mature code (nginx is over a decade old, Apache and IIS are nearly two, and all are written by people devoting full time to a httpd and used in production across the net on major web sites).

    Also, PHP does support it's own server, but they recommend not to use it in production because it was created to fill a specific role (local server for developers' machines) and they realize that a mature server like Apache or nginx is a better solution for a production application, and don't want to re-invent the wheel.



  • @MiffTheFox said:

    Among the benefits of a standard HTTPd are logging (as you said), third-party attack mitigation (such as Apache's mod_evasive), faster and easier to serve static content since you don't have to code up special handlers for it and it doesn't talk to the runtime at all, ability to mix different technologies (like legacy PHP code being phased out by ASP.net), much more mature code (nginx is over a decade old, Apache and IIS are nearly two, and all are written by people devoting full time to a httpd and used in production across the net on major web sites).


    Yes, and I get all of that by using nginx to proxy to a go server.

    @MiffTheFox said:

    Also, PHP does support it's own server, but they recommend not to use it in production because it was created to fill a specific role (local server for developers' machines) and they realize that a mature server like Apache or nginx is a better solution for a production application, and don't want to re-invent the wheel.


    I don't understand what you're getting at. FastCGI is a protocol just like HTTP is. The difference is that with HTTP, there's no need to translate the request and response between formats. You can just forward it intact.



  • @MiffTheFox said:

    ...or even fucking PHP, it would communicate directly with a mature httpd like nginx, Apache, or IIS over FCGI.

    Actually, for PHP I would use mod_php. A lot less overhead and you get shared memory for opcode caches.



  • @Ben L. said:

    I don't understand what you're getting at. FastCGI is a protocol just like HTTP is. The difference is that with HTTP, there's no need to translate the request and response between formats. You can just forward it intact.

    Yes, but HTTP is a much more complicated, difficult protocol than FastCGI. It's harder to get right, and it would not surprise me if Go's HTTP implementation had bugs. The real question is why would you use HTTP over FastCGI?



  • @OldCrow said:

    Oops. Meant to say that /run was mounted as tmpfs. Not /var. That would indeed be crazy.
     

    *phew*@OldCrow said:

    I have contemplated moving /var/log to tmpfs, but decided that it would defeat the purpose of having logs in the first place. Then again, some logs you don't need to preserve through reboots. But if something writes a log often enough that this makes a difference, then that something is broken already.

    Once logwatch (and F2B,cacti etc) has worked through my logfiles, they're pretty much redundant.

    I can understand /var/cache or some other temp storage (/var/lock, /var/run) being tmpfs, but not the whole of /var. I have quite a lot stuck in there.

    @morbiuswilters said:

    Mine are in /www/$DOMAIN_NAME/

    My users have theirs in ${THEIR_HOME}/websites/${THEIR_DOMAIN}/htdocs so it's all in their own home and consumes their own quota.  /var/www contains some skeletal stuff for unmatched host-headers (including a honeypot for exploit sniffers).

     

     



  • @morbiuswilters said:

    cron only sends out mail when there's output. So you can just add >/dev/null 2>&1 to the end of all of your cron entries and they won't send email.

    @PJH said:

    Or you could simply tell cron to simply stop sending the mail in the first place if you're not interested in any of the output.

    Those. Sounds like Miff's looking to fix the symptoms and not the cause.

     



  • @Cassidy said:

    @morbiuswilters said:
    cron only sends out mail when there's output. So you can just add >/dev/null 2>&1 to the end of all of your cron entries and they won't send email.

    @PJH said:

    Or you could simply tell cron to simply stop sending the mail in the first place if you're not interested in any of the output.

    Those. Sounds like Miff's looking to fix the symptoms and not the cause.

     

    The /dev/null incantation fixed it. I was just looking at shutting down all mail because either apt or another package manager on another distro used to spam me with mail too. I was amazed when I found out about the echo 'd *' | mail command rather then having to rm /var/mail/miff.

    All I can say is the rest of you should be thankful I'm a Windows developer.



  • @morbiuswilters said:

    @Ben L. said:
    I don't understand what you're getting at. FastCGI is a protocol just like HTTP is. The difference is that with HTTP, there's no need to translate the request and response between formats. You can just forward it intact.

    Yes, but HTTP is a much more complicated, difficult protocol than FastCGI. It's harder to get right, and it would not surprise me if Go's HTTP implementation had bugs. The real question is why would you use HTTP over FastCGI?

    You have a website that uses FastCGI instead of HTTP? What browser do you suggest I use to visit it?



  • @Ben L. said:

    @morbiuswilters said:
    @Ben L. said:
    I don't understand what you're getting at. FastCGI is a protocol just like HTTP is. The difference is that with HTTP, there's no need to translate the request and response between formats. You can just forward it intact.

    Yes, but HTTP is a much more complicated, difficult protocol than FastCGI. It's harder to get right, and it would not surprise me if Go's HTTP implementation had bugs. The real question is why would you use HTTP over FastCGI?

    You have a website that uses FastCGI instead of HTTP? What browser do you suggest I use to visit it?

    What the fuck are you talking about?



  • @morbiuswilters said:

    @Ben L. said:
    @morbiuswilters said:
    @Ben L. said:
    I don't understand what you're getting at. FastCGI is a protocol just like HTTP is. The difference is that with HTTP, there's no need to translate the request and response between formats. You can just forward it intact.

    Yes, but HTTP is a much more complicated, difficult protocol than FastCGI. It's harder to get right, and it would not surprise me if Go's HTTP implementation had bugs. The real question is why would you use HTTP over FastCGI?

    You have a website that uses FastCGI instead of HTTP? What browser do you suggest I use to visit it?

    What the fuck are you talking about?

    What the fuck are you talking about?



  • @Ben L. said:

    You have a website that uses FastCGI instead of HTTP? What browser do you suggest I use to visit it?

    Anything, because it's accessed through a httpd anyways. FastCGI just gives all the benefits of integration with the server, such as direct access to client IP addresses (you don't have to use X-Forwarded-For, and if the client's using X-Forwarded-For it won't get munged), you won't have problems with the Host header (either it being lost in the proxy or causing routers to freak out), and (nginx doesn't support this, but Apache and lighttpd do) the ability for the httpd to spin down the application when it's not in use.



  • @Ben L. said:

    I've actually tried to apply for DreamSpark. It's a piece of shit. Instead of giving you a useful download, they give you a file that can only be run with their "secure downloader", which basically equates to "ha ha you can't use this to download an OS because you need the OS to run the downloader".

    You need to upgrade to Geniune Microsoft Windows 8 Pro.

    @Ben L. said:

    I'm not sure what job uses DreamSpark, but it's definitely one I'd want to stay far, far away from.

    I meant Windows/IIS are the tools, not DreamSpark.  I'd hope that your job has a Software Assurance agreement.

    @Ben L. said:

    Using IIS just to proxy to another server would be like using a flamethrower to light birthday candles. Because it would probably set your house on fire.
     

    Why not learn a real programming language that can be served by a real httpd, like PHP, Common Lisp, or asp.net?

     



  • @Ben L. said:

    I would write a survey where the first question is "What is your name?" and the remaining 249 questions are "Why did you choose this answer?" and then I'd give anyone who filled it out correctly a photocopy of a cookie.
    We had a contest at work and whoever submitted a certain number of completed tasks got lunch.  One person jokingly (I think) asked if he could just do one and photocopy it.  So I gave him a pciture of lunch.



  • @morbiuswilters said:

    @blakeyrat said:
    It was always a huge challenge to talk them down to 6-8 questions instead of the 60-80 they invariably wanted to ask.

    Question 57: Is your wife attracted to doughy, middle-aged marketing managers?

      If yes -> Question 57b: What is your home address?

     

    Question 59.  Have you ever had a homosexual experience?

    Question 60.  Would you like to?



  • @Ben L. said:

    @drurowin said:

    @Ben L. said:

    @MiffTheFox said:
    @Ben L. said:
    http://nightgunner5.is-a-geek.net:1337/l4d2

    Port 1337? Please don't tell me that Go doesn't follow Node.js into the "mature httpds are boring, let's write our own" cult.

    The Go server is running on port 8482. This is just a nginx server that handles logging, etc.

     

    You should apply for DreamSpark and obtain a copy of Windows Server 2012 so you can learn to use the tools you'll be using in your job, rather than a toy OS created by an angry Norwegian.  IIS blows nginx out of the water any day of the week.

    I've actually tried to apply for DreamSpark. It's a piece of shit. Instead of giving you a useful download, they give you a file that can only be run with their "secure downloader", which basically equates to "ha ha you can't use this to download an OS because you need the OS to run the downloader". I'm not sure what job uses DreamSpark, but it's definitely one I'd want to stay far, far away from.

     

    You realize that the only thing you really need from DreamSpark is the licence key for the OS, right?  I'll admit my last experience with this was back when it was MSDNAA instead of DreamSpark, but back then you got the licence key and a link to a downloader for a disk image, which is the same as it is now (as far as I know).  You don't have to use that disk image though, any disk/disk image for that OS will work just as well.

     



  • @El_Heffe said:

    @morbiuswilters said:

    @blakeyrat said:
    It was always a huge challenge to talk them down to 6-8 questions instead of the 60-80 they invariably wanted to ask.

    Question 57: Is your wife attracted to doughy, middle-aged marketing managers?

      If yes -> Question 57b: What is your home address?

     

    Question 59.  Have you ever had a homosexual experience?

    Question 60.  Would you like to?

     That one was on the survey from when I tried to join the Catholic church when I was younger.  I remember the wise words the priest said to me: "You'll get in trouble too if you tell."

     



  • @drurowin said:

    I remember the wise words the priest said to me: "You'll get in trouble too if you tell."

    If by "in trouble" you mean "face-raped by the Pope", then yes.



  • @morbiuswilters said:

    face-raped by the Pope

    That's made my day.



  • @nosliwmas said:

    @morbiuswilters said:
    face-raped by the Pope

    That's made my day.

    To be fair, I remember reading somewhere that Catholic priests are less child rape-y than the clergy of other major religions. And public school teachers rape way more kids than religious leaders (although kids get more exposure to public school teachers, so maybe it's like the planes are safer than cars thing--we need to look at the number of rapes per 1 million hours spent with teachers versus popes.)

    Also, the "no sex" thing just seems cruel. It's like giving a thirteen year old boy a bottle of whiskey* and keys to a Ferrari and being like "Your parents aren't going to punish you for what you do, although there's a very tiny chance they might decide to in 50 years, after you die. Maybe. But there's really no way to know. And it seems so very unlikely that they could exact revenge for totaling their car in the afterlife.."


    (*It occurs to me that most priest stories probably begin this same way..)


Log in to reply