C# functional language extensions and Erlang-like concurrency system - <AUTHOR> https://github.com/louthy/language-ext <comment><USER2> C# is probably my recommended language for anyone looking to get started with functional programming and event handling.

Its familiar Java/C like syntax, classic use of OOP, enterprise vibes will mean it'll be very familiar and easy for most to pick up. And as you go deeper, it'll introduce you to anonymous delegates, lambdas, true generics, higher order functions, true closures, list comprehensions, anonymous types, type inference, lazy evaluation and even a sprinkle of monads.

With the language extensions, you can get even further.

This is a great way to start learning about FP concepts without even knowing it and it'll make your switch to a more thorough FP language much easier, such as MLs, Lisps, Erlangs, and most proof languages.

<comment><USER3> I think mixed-paradigm languages make it harder to get started with functional programming, since they provide a crutch to other paradigms, which people tend to fall back on. I'd recommend Scheme, or maybe Elm (if you're doing web programming), as good starting points to learn FP, since both languages are relatively simple to learn and won't let you implement OOP, for instance.

<comment><USER4> Scheme will let you implement an object system on top of it, using mutable closures, and perhaps macros for syntactic sugar.

<comment><USER5> The most popular Scheme (Racket) comes with an object system, that I almost instantly fell on when I came to it from C#. I don't think there's any substitute to just explaining the problems with OOP.

<comment><USER3> That depends on how you think about problems, I think. I understand OOP, and have written OOP code for two decades, using languages like Java, C#, Ruby, C++, etc. However, OOP never felt like a natural way to think to me. The first time I worked with a functional programming was an amazing experience, since FP works in exactly the same way I think. I'm not knocking OOP. I think it is great. It just doesn't fit as well with the way I puzzle through problems. Good thing we have options, I suppose.

</comment></comment></comment></comment></comment><comment><USER6> Tuples will be native first class citizen on C# 7 ([https://blogs.msdn.microsoft.com/dotnet/2016/08/24/whats- new...](https://blogs.msdn.microsoft.com/dotnet/2016/08/24/whats-new-in- csharp-7-0/))

<comment><USER7> I've been using them quite heavily already. Lovely stuff. Though disappointing that record types didn't make it in.

<comment><USER8> Doing Haskell nowadays, been years since touching C# --- maybe my memory is fooling me but didn't have C# "structs" (or whatever they were called) from the very start? What else exactly are "record types" if not those?

Or do you simply mean some leaner syntactic sugar for their on-the-fly instantiation?

<comment><USER9> I'm curious how you made that transition,and what problem domain you're in. I predominantly write web applications. Lots of React, but some traditional MVC apps,too. Haskell is a language I want to love, but haven't ever managed to find it productive in my problem space.

<comment><USER8> Haven't done it all that long, after C# I first went Go for a few years, and spent much time with GL shaders and such too.

Haven't done such "real-world" stuff (with a proper server side, client side, data side etc) in Haskell either --- _yet_. It's not _immediately_ productivity-inducing _at all_. I think over _the very long haul_ , prolonged intensive exposure makes many a developer of "mainstream/web/crud/mvp/etc extractions" a much more rigorous, precise, exacting practitioner, which will yield a hard-to-quantify, harder-to-capitalize-on, but still very real and more substantive/deeper/sustained "productivity boost". It also teaches one to think of more robust patterns of abstraction and generalization which can translate back into programming-in-other-languages.

Nothing more tangible than that to report. Also there's a _lot_ of curious- researcher-type "playfulness" in the wider ecosystem that's _very_ tricky to assess what this will _actually buy_ the "let's get coding" "brogrammer" (such as I)!

One facet that makes it quite worthwhile is that the language/compiler/ecosystem has incredibly bright people contributing not just by devising yet another funky undecipherable combinator for saving 10 lines of code in once-a-decade scenarios, but in fact actual hardcore pedal-to-the- metal under-the-hood optimizations, code check/test/validation assistence tools, keeping it all somewhat performant in server/parallel/concurrent scenarios and so on.

</comment></comment></comment></comment></comment><comment><USER10> As someone new to Erlang, I'm curious what the main benefits of this are? It's obviously pretty popular on GitHub. To my understanding, you can use F# with C# in .NET projects. Also from what I've read, it seems like the biggest benefit of Erlang is BEAM. Would anyone be willing to explain the benefits of this? Is the main benefit just to allow more functional programming in C#?

<comment><USER11> As a long-time C# dev, now full-time Erlang/Elixir dev, I've written things like this before myself when attempting to bring some of the FP tools I loved back to C# for my own benefit - so this looks really familiar in that sense. This is by no means an _actual_ competitor to Erlang's actors - for one thing it lacks any form of supervision, which is really the most important aspect of Erlang's actor model (i.e. the "let it crash" philosophy). There are other things missing as well (such as the OTP behaviours, e.g. gen_server, provided by Erlang).

That said, this looks like something I'd definitely use, or at least experiment with in C# if I was still doing work in the language - though for the actor bits I would probably lean on Orleans.

<comment><USER12> > This is by no means an actual competitor to Erlang's actors - for one thing > it lacks any form of supervision

Author here. That is simply not correct. It has a full supervision hierarchy as well as a compositional strategy system for creating policies that handle failures. The strategies can also be scripted as part of the config, to detach the failure handling entirely from the actor itself.

</comment></comment></comment><comment><USER13> Why should I use this instead of Akka.net or Orleans for actors in C#?

<comment><USER7> I personally use both Akka and LanguageExt together. The higher order type features, monadic operators and types such as Optional and Either are useful for any project

</comment></comment><comment><USER9> Reading through the docs, this looks really nice. Forget the Erlang in the title, and just think of this as a nice functional C# hack. I'm thinking of using C# on a side-project because the tooling around F# in .NET Core on Mac is sub par right now. This library might be just the ticket.

</comment><comment><USER14> It's not clear to me from a cursory look through the docs how the scheduling system works. "Erlang-like" concurrency works so well predominantly because the runtime uses preemptive scheduling instead of cooperative (which is what basically everything else uses, unfortunately).

<comment><USER15> That's incorrect, most scheduling systems, including OS threads are preemptive. Erlang's scheduler _itself_ is actually cooperative - though it can still preempt the "processes" it schedules.

Erlang's message passing system is probably more important to the success of its concurrency model than the specifics of the scheduler. As proven perhaps by the success of Akka and other actor-based systems built on a different threading model.

<comment><USER11> I think what he meant is that from a programmer's point of view, Erlang appears to be preemptive (there is no explicit yielding of control, ala golang or lua, the two I can think of off the top of my head), even if the scheduler itself is cooperative. The place where this most obviously reveals itself is with NIFs, where the scheduler can no longer preempt the process, and is blocked until the NIF finishes executing. At least that's my understanding.

<comment><USER15> Right, that's exactly what I said above. But OS threads are preemptive in exactly the same way. It is not unique to Erlang as claimed, in fact it's the norm.

<comment><USER16> I think you're confusing the issue; OS processes are preemptive, threads within a process are not. Preemptive threads are not the norm on Unix / Linux / Windows systems. The BEAM VM implements its own threads which allows for them to be preemptively scheduled.

</comment></comment></comment></comment></comment><comment><USER3> I haven't programmed in C# for 14 years, but it is nice to see projects embracing functional programming and the actor model. It solves all kinds of concurrency headaches. I'd still opt for Erlang or Elixir over this due to OTP and BEAM, but it is still great to see things moving in this direction.

</comment><comment><USER12> I didn't realise I'd hit the front page again! I'm the author of this project. Feel free to AMA.

I'm currently working on V2 of this project to bring ad-hoc polymorphism to C# (almost type-classes), and splitting out the Core and Process (actors) libraries to separate repos.</comment>


WordPress 3.5 "Elvin" Released - <AUTHOR> http://wordpress.org/news/2012/12/elvin/ <comment><USER2> There is a more technical list, including the details on the improvements for developers here:

<http://codex.wordpress.org/Version_3.5>

The biggest thing I wish WordPress would add is a better built in system for real templates, using a something along the lines of Twig (<http://twig.sensiolabs.org/>).

That mixed PHP code and HTML in your standard WordPress template disgusts me every time I see it. I know there are some custom solutions for creating real templates in Twig, but this should be part of the mainstream WordPress branch.

<comment><USER3> Yup, WordPress follows all bad practices of a typical PHP project: mixed PHP and HTML all over the place, lots of global functions instead of classes and direct calls to the MySQL functions instead of PDO so you can't use another database like Postgres.

Pity it's so widely used, and there's little competition...

<comment><USER4> Saying there's little competition is a huge stretch. WordPress is the dominant force by a large margin. But from small static site generators, hosted platforms, other open source alternatives, to enterprise-ready solutions there are a lot of competitors hitting nearly every segment of the market.

<http://trends.builtwith.com/cms> provides some good trends of the big players, but I wouldn't put too much stock in it.

That said, as a developer who has fallen into the WordPress business out of necessity, there are a lot of great products out there that are built much better than WordPress and I wish one of them were the dominant player. Still, WP manages to get the job done most of the time.

<comment><USER5> > there are a lot of great products out there that are built much better than > WordPress and I wish one of them were the dominant player.

Honest question: Can you name one?

I'm seriously looking for a WordPress alternative, but I haven't found one that is truly BETTER.

<comment><USER4> What I mean by this is others have a better structured, more solid & easily extendable code base, better separation between presentation and logic, etc.. Obviously, this is somewhat of an opinion, and it only refers to the underlying structure. For the end user, WordPress is probably the best. A large part of this is due to its ecosystem of plugins and themes. You shouldn't need to build custom code on top of WordPress unless you are doing something very unique, building an application (as opposed to a "website"), or attempting to tie together several plugins.

Sticking with PHP, both <http://modx.com/> and <http://www.silverstripe.org/> are fairly popular and well-built. I've also heard good things of <http://www.concrete5.org/> , <http://www.movabletype.com/> , <http://textpattern.com/> , and <http://ellislab.com/expressionengine> . <http://habariproject.org/en/> has also been built specifically to address many of the faults in WordPress and other popular systems.

<comment><USER6> Isn't MoveableType in Perl?

<comment><USER4> Possibly - I've never done anything with it. The PHP statement was really only for the first two, sorry for the confusion!

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> The media changes are a welcome addition, but I can't help but feel Wordpress is still lacking in the media department quite a lot. One feature I've been hoping for in terms of media management is folders to organise media instead of paginating pages of all images being displayed which usually involves duplicates being displayed. I love Wordpress, but it would be great to be able to upload specific images for example of dogs into a folder called, "Dogs" and then being able to browse and manage media in said folder.

It's great to see Wordpress is taking steps in the right direction with every release. Another wishlist feature would be the integration of the Advanced Custom Fields plugin straight into the core which allows you to add custom meta boxes and fields to posts in a tasteful and aesthetically pleasing way. I'm excited about the future of Wordpress, it's my bread and butter and I don't see it being beat any time soon.

<comment><USER8> Re: media, one step at a time. :)

Re: custom fields: This makes little to no sense to be in core, because custom fields are just that, "custom". There's no point in giving the end user the ability to make their own meta boxes hooked to custom post meta if there is no plugin or theme actually using that meta data. Creating a meta box is something that the theme/plugin should do, because it's actually going to use the data gained from that meta box.

In other words, the horse goes in front of the cart, not the other way 'round.

</comment></comment><comment><USER9> WordPress could really change their bad reputation by dropping support for PHP 5.2 in the next release, and requiring 5.3.

This would allow future WordPress developers to namespace their code, and out allow simple closures withint your code.

As of PHP 5.5, there is no support for a straight mySQL connection. There is no real downside in WordPress adopting the PDO standard.

<comment><USER8> Somehow I doubt that we'll decide to drop support for 65.5% of our users (roughly 26 million websites).

<http://wordpress.org/about/stats/>

<comment><USER10> It's funny how many people say WP should drop 5.2 compatibility. It's certainly possible to push the hosts towards using 5.3, but the fact is that the user base simply isn't there yet.

</comment></comment></comment><comment><USER11> Unfortunately there is still no reliable unattended upgrade process inluding rollback (aka migration) for wordpress. I looked into this a little bit, but there does not seem to be a reliable way to check if plugins have been executed successfully and with expected results or not, so you never know after an upgrade if your site is broken.

There are still many other issues with the code, but having a clearly defined error-handling / -signaling for plugins would be the one single change that would help in many problem areas of wordpress development - making rules and knowledge about successful plugin execution and error handling obligatory for plugin devs could be the one single change that could also help to reduce that annoying flood of unbelievable bad code to be found in WP plugins repo.

</comment><comment><USER12> Twentytwelves mobile first approach for me is source of pain. They essentially dropped support for IE8 and below which means people in corporate environments like the company I work for who are stuck to windows xp due to other legacy software that requires it cannot view the desktop view of themes based on WordPress new default theme.

</comment><comment><USER13> horrendous muffled voiceover on that video

<comment><USER8> He's not muffled. He actually sounds like that. :)

</comment></comment><comment><USER14> Does anyone know if / when WordPress may start using a modern PHP framework (eg zf2 / symfony2)?

<comment><USER15> Wordpress is its own PHP framework; in fact, PHP itself is a framework, provides everything frameworks do from database querying to templating.

<comment><USER16> Calling Wordpress a framework is like calling Symfony a programming language.

<comment><USER17> Much like Drupal, WordPress can be bent into something vaguely resembling a framework, if you're the type of person who enjoys that sort of thing. But being the type of person who likes using WordPress as a general-purpose framework is sort of like being the type of person who enjoys being tied up and beaten with a rubber hose. It's a weird, weird kink.

<comment><USER16> Of the 2 I very much prefer Drupal. It's a bad CMS, but a great CMF. Wordpress is in my opinion the exact opposite.

That said, I haven't checked out the last 2 versions or so.

</comment></comment></comment></comment></comment><comment><USER18> I wish they'd put some serious resources into dealing with comment spam. I realize it'll always be an issue, but they could at least:

1) not make comments enabled out of box with no anti-spam measures (moderating isn't anti-spam in my opinion: technical solutions should come before man- power)

2) not make me rely on third-party plugins to combat it

<comment><USER7> Akismet does a great job dealing with comment spam. Activate it and input your API key and you're done. Even other applications like PHPbb and "insert PHP content management system here" have problems with spam, it's not as easy as you think to detect and deal with spam.

<comment><USER18> I've used other pieces of software, even some paid-for PHP features, so I agree as to the spam problem. I was thinking more along the lines of disabling comments by default, and making it a bit of a chore to enable, to make point- and-click installs less of an attack vector.</comment></comment></comment>


Technology for video website - <AUTHOR>

Hi, my company will fire up the development of a site of videos more o less(less for sure) like youtube and vimeo and I need information on how to approach the development of such a site. Anyone knows some sites with references? thanks <comment><USER2> What you need is to hire a contractor/consultant with experience in that specific area of scalable content/knowledge delivery and conversion.

I am that consultant and contractor - my last contract position was with a company that has a platform for delivering live and on-demand video to hundreds of thousands of simultaneous viewers, worked on all platforms, and would convert virtually any audio/video file into the necessary formats for streaming and downloading automatically.

Over three years there, their installed client base increased by an order of magnitude, the transcoding service is now being marketed as a separate product, and I'm looking for more work to fill up my time.

So my advice is to hire a consultant, and my other advice is to hire me :)</comment>


Git-scm.com status report - <AUTHOR> http://marc.info/?l=git&m=148600283715424&w=2 <comment><USER2>
        > We (the Git project) got control of the git-scm.com domain this year. We
        > have never really had an "official" website, but I think a lot of people
        > consider this to be one.

So, uh, git-scm.com _wasn 't_ an official website all these years?

<comment><USER3> It was set up and run by GitHubbers for advocacy/evangelism.

<comment><USER4> Maybe so, but since git-scm.com's 2012-05-05 redesign [1], the professional visual design, the new footer, the internally-hosted download pages, and the verbiage has no longer given the impression of an "unofficial" site. Compare with the old design used until 2012-05-04 [2].

(edit: static screenshots at [http://imgur.com/a/OCjxY](http://imgur.com/a/OCjxY))

[1] [http://web.archive.org/web/20120505190309/http://git- scm.com...](http://web.archive.org/web/20120505190309/http://git-scm.com/) [2] [http://web.archive.org/web/20120504151545/http://www.git- scm...](http://web.archive.org/web/20120504151545/http://www.git-scm.com/)

\----

more goodies:

first commit of new design: [https://github.com/schacon/git- scm/commit/3bcc818433c6ae94dc...](https://github.com/schacon/git- scm/commit/3bcc818433c6ae94dc5c7515e70fb5c01a4ab34d)

some design work for git-scm.com: [https://dribbble.com/jasonlong/projects/40112-Git-Site- Redes...](https://dribbble.com/jasonlong/projects/40112-Git-Site-Redesign)

<comment><USER3> I was going to bring it up in my original comment, but felt that it might come off as too negative: GitHub has made out handsomely by unsuspecting folks conflating Git and GitHub. So it's not really surprising. More _expected_.

<comment><USER5> Indeed, the other day I mentioned we'd moved our code into git (from, yuck, perforce) and my girlfriend said, "oh, GitHub."

<comment><USER6> It's like "hash" and "hashtag" all over again. _sobs_

<comment><USER5> Fight back: call them "Sharp designators" (or if you're a splittist, "pound marker"

<comment><USER7> No, please.

the pound is £

# this really _is_ hash ;)

<comment><USER5> Splittist! The People's Liberation Front of Lingustics fundamentally condemns you members of the Linguistic People's Liberation Front!

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> This is very interesting. I run [https://www.gitignore.io](https://www.gitignore.io) and this post highlights a lot of interesting things about git-scm.

1\. GitHub is footing the bill — I'm paying for gitignore.io (although it's only costing me the annual domain)

2\. The site uses 3 Dynos — Currently gitignore.io uses 1 Dyno on the free tier and I've recently moved the backend from Node to Swift to double / triple network performance based on my preliminary testing. I don't know why the site needs 3 Dynos because like the OP mentioned, it's a static site. I also use Cloudflare as a CDN which could dramatically improve git-scm's caching layer. It's not that helpful for me as most of my requests are dynamically created, but for a static site, it would drastically reduce Dyno traffic.

3\. Access to Heroku seems to be an issue — I ran into the same problem and I'm finishing up a full continuous integration process to build and test my site on Travis. I basically want to approve a pull request and have the site fully tested though my Heroku pipeline, then have the PR landed in production.

4\. Traffic - I don't know how many users he's got but I'm seeing about 60,000 MAU's and about 750,000 requests a month.

* Jason Long helped design my site and logo as well.

<comment><USER9> Your site doesn't work for me. It doesn't matter what I enter, (I tried Delphi, C#, Visual Basic, Windows) I only get "No result found". Also your Tutorial Video doesn't match your current design. The colour scheme is off and instead of a "Generate" dropdown button there is a plain "Create" Button.

I'm on Chrome Version 55.0.2883.87 m on Windows. I turned of uBlock Origin for your site.

<comment><USER8> You may be experiencing some caching problems. Also around the time you checked I was in the middle of pushing the swift site to Heroku so that may have introduced some issues as well. The new site has a "Create" button with no drop down — Can you please re-try [https://www.gitignore.io/](https://www.gitignore.io/).

<comment><USER9> OK, I tried it at home. Another PC, another Provider, Chrome Version 56.0.2924.87, no uBlock, I even tried it in Inkognito Mode. The result is the same. [https://imgur.com/a/Bo4Kq](https://imgur.com/a/Bo4Kq)

</comment></comment></comment></comment><comment><USER10> I am always amazed at how quickly Heroku gets prohibitively expensive when you start scaling.

When I ran [https://jscompress.com/](https://jscompress.com/) on Heroku, I was up to $100 per month for 2 2x Dynos. Completely absurd for a simple one-page Node.js app. I put in a little work moving it to DigitalOcean, and had it running great (and faster) on a $10 VPS.

I get the appeal of Heroku (I have used it several times), but man sometimes it feels like gouging when you can least afford it.

<comment><USER11> Heroku is like a cradle: it gives you instant comfort and feeds you all you need without effort when you're newborn. But when you're ready to start walking by yourself, it definitely will strand you.

</comment></comment><comment><USER12> Conservatively, the people in this conversation make $5 million per year total, the software (git) contributes billions, and we are discussing how to better allocate $230 per month. Open source economics is fascinating.

<comment><USER13> If you think about it in terms of hourly contracting rate, the opportunity cost of participating in this conversation could easily cost more than $230.

</comment></comment><comment><USER14> Speaking of popular software that doesn't have its own website, the PuTTY developers have never bothered with getting a domain name specifically for PuTTY ([http://www.chiark.greenend.org.uk/~sgtatham/putty/](http://www.chiark.greenend.org.uk/~sgtatham/putty/)). I'm not actually entirely sure what the rest of the site/domain is meant to be for either.

<comment><USER15> FWIW: PuTTY does have a webpage ([http://www.putty.org/](http://www.putty.org/)), but it just redirects the download link to the site you mentioned

<comment><USER16> putty.org is not affiliated with the PuTTY project. The domain is registered by one of the founders of bitvise, which explains the advertising for their products on the site.

</comment></comment></comment><comment><USER17> I wonder how hard it would be to convince folks to drop their expensive setups in favor of nearly $0 static sites, as well as how much up front cost they'd be willing to shovel out for the transition. S3 + CDN (+ Lambdas optionally) feels really ready to me for almost any straightforward "website." For most things GitHub/Lab pages is an easy path to that.

<comment><USER18> A lot of folks who have static websites aren't technical and invested thousands of dollars for a WP website. If their site already runs, you wouldn't be providing anything.

<comment><USER11> ...unless they have to pay noticeable money for WP hosting due to serious load, or were bitten by security problems.

A free business idea: write a converter from WP to Jekyll (or Hugo) that converts 95% of a typical WP site right, sell total conversion services, maybe reselling hosting, too.

<comment><USER19> I have several WordPress sites (mostly "abandoned"/no longer updated) that I would love to convert to static sites. I would happily pay a decent sum for a tool that could completely handle that conversion/migration.

<comment><USER20> Can't you just dump the website using wget ?

<comment><USER21> You can also use this but havn't testet it.

wget -N --recursive --page-requisites --html-extension --convert-links [https://example.com/](https://example.com/)

</comment></comment></comment></comment></comment></comment><comment><USER22> If it were my site, I think I wouldn't even bother with the search: just stick it all on S3, and have one of those 'Google custom search' or similar boxes, so it's static as far as your site's concerned, and just redirects to Google with the `site:foo` filter.

I don't really have a handle on what S3 costs 'at scale', but I think I'm willing to bet it would knock at least the 0 off the end.

<comment><USER23> Why bother with S3? I'd buy a Raspberry Pi, plug it in at home and call it a day.

<comment><USER24> As much as I enjoy the Raspberry Pi, I doubt if it could handle the traffic or if it would last long with the limited write cycles of an SDcard.

<comment><USER23> I know someone who optimized searching the leaked Adobe database (of a few hundred gigabytes if I remember correctly) on a Pi to a sub-second search. That was super impressive and the method used wasn't even obscure (binary search). The same doesn't apply here, but I'm trying to say a Pi isn't entirely worthless.

For example, what pages get accessed the most anyway? I'm guessing the latest source code and maybe the latest release, though most people probably just apt-get git instead so it's probably mostly the source code. Then there are man pages and some other info pages, if I remember correctly. Sounds like the latest release + 90% of those text pages can easily fit in RAM. So memcached? Nah, the Linux kernel happily caches the files that you read from disk.

I don't know the actual numbers but it doesn't sound infeasible to me. A $230 hosting bill is very heavy though, I guess you'd need some serious fiber as well to provide the uplink. But again, without numbers it's all "maybe" and "probably".

<comment><USER25> Yeah, that was my project, it worked quite nicely. However, the biggest reason was that my Raspberry Pi was my only server at that point, and besides, tranferring 10GB out of my home connection to a VPS would've been too slow for my impatient self. I think the file was stripped of all other data (which brought it down to about 4GB) and I put it on a thumb drive instead.

Nowadays I would have used a VPS for that. The point with S3 or any other cloud solution is that they make sure you're up and running. Even though it might still be useful, the need for good service monitoring is as good as gone when moving to one of these cloud based platforms. And then I'm not even taking into account the time you have to invest in setting up and configuring a RPi properly vs just pushing a repo to Github Pages, or uploading a zip file to S3.

Heroku or other cloud platforms can be crazy expensive, but for static file hosting, S3 or Github Pages is more than enough and quite affordable.

</comment></comment></comment></comment></comment><comment><USER26> > It uses three 1GB Heroku dynos for scaling, which is $150/mo. It also uses > some Heroku addons which add up to another $80/mo.

Wow, why ? You can get a VPS with 2Go Ram + 10 Go SSD for 3€ those days ([https://www.ovh.com/fr/vps/](https://www.ovh.com/fr/vps/)).

That seems very expensive.

<comment><USER27> Probably the tooling around Heroku and the scaling. If the site suddenly gets more popular, you tweak a slider and suddenly you have more compute.

<comment><USER26> For a static website you can easily live with 10000 users on this machine. But lets say you need more, for 40 dollars you get 30Go of RAM and a 250 Mbps pipe ([https://www.ovh.com/fr/vps/vps-cloud- ram.xml](https://www.ovh.com/fr/vps/vps-cloud-ram.xml)). To serve HTML pages plus a bunch of css files that should be ok.

</comment></comment></comment><comment><USER28> Some armchair speculation: the price Gitlab and Atlassian would pay to have one link each up there would probably dwarf the current monthly hosting costs.

Not sure if the "try.github.io" link should count as a link to Github, but most of the others do (e.g., github.com/google).

<comment><USER29> Further armchair speculation: you could extract more money from one of them for having an "exclusive" link than you could from both of them having one link each.

<comment><USER30> Indeed. I'm having a hard understanding why Github, Gitlab or Attlasian didn't jump already in requesting full ownership of the project. This is the clearly the most important open source project to their core business.

<comment><USER31> If you're not aware, many of the core contributors are employed by these companies, or extensions are built internally at these companies and then released opens source.

For example, the long time maintainer Junio works at Google and peff at GitHub.

I think the current management of the project, by the Project Leadership Committee, is working well and the project would gain little by coming under the direct management of any single company.

<comment><USER32> The project would lose a _lot_ by coming under the "management" of any one company. I imagine several forks would quickly ensue.

</comment></comment></comment></comment></comment><comment><USER33> Just a note:

> The deployed site is hosted on Heroku. It's part of GitHub's meta-account, > and they pay the bills.

So why aren't they just using a GitHub page for this?

<comment><USER34> GitHub Pages still doesn't support HTTPS on custom domains.

<comment><USER35> Can't you use Cloudflare for HTTPS? I think it ends up being something like:

        User <-free SSL cert-> Cloudflare <-self-signed GH cert-> GitHub Pages

Obviously not ideal, but still possible.

</comment></comment></comment><comment><USER36> IMHO, since it's a static website, they can use a static website generator and simply usage something like GitLab pages to deploy it (for free).

There is a bit of work to be done, but it shouldn't be too terrible if the templates and stuff are okay.

<comment><USER37> Or just throw a CDN with a decent cache lifetime in front of the Rails app and scale the Heroku side way down if you don't want to go through the hastle of changing anything. It's pretty much static after all.

<comment><USER38> I was thinking the same thing after reviewing the repo and output HTML but I wonder if that would really lower the monthly hosting costs for the Heroku instance and the various addons. It would be simple to modify the RoR app to output the proper caching headers that would allow any CDN to cache the HTML output and obey the various cache limits, but on demand rendering the output from time to time is still required once the cache expires.

I think moving the site to a normal static site generator (like Jekyll) would deliver the most bang for the buck but would be quite the transition. The site would only need to be built upon a new commit and with the proper site generator it will only update the underlying HTML files that require a change. Then syncing the update HTML to whatever CDN is chosen.

</comment></comment></comment><comment><USER39> What's the best way to optimize cost here? Complete site cached and served from memory (no disc access -> faster response times -> scales better)?

<comment><USER40> Quick win would be to put CloudFlare in front of it

<comment><USER41> Why would that do anything? They aren't paying $230/mo for bandwidth, but for shitty VMs.

<comment><USER42> It's mostly cacheable, so they should theoretically be able to scale down the cluster with a caching reverse proxy or CDN.

</comment></comment></comment></comment><comment><USER43> While moving to a static site is the cheapest long term, simplest solution is to switch to a cheaper dyno type. The message says they're running on three 1GB dynos. Change that to six hobby tier (512mb) ones and you'll get the similar performance for $42/mo (instead of $150).

No code changes. No anything. Just a twiddling the dyno tier and count.

</comment><comment><USER44> I really find it to be a useful resource for learning about some of the more obscure commands. For instance, I would have never known about built history: [http://git-scms.com/docs/built-history#d874a7762d4527a1385ce...](http://git- scms.com/docs/built-history#d874a7762d4527a1385ce7891ef87e46)

</comment><comment><USER45> > It uses three 1GB Heroku dynos for scaling, which is $150/mo. It also uses > some Heroku addons which add up to another $80/mo.

I have been involved in _commercial_ projects that don't cost that much monthly. I can't imagine spending that much on a non-profit thing.

</comment><comment><USER46> I don't see any issue in github paying for this page and i don't think, that this page will no longer exists when github decides not to pay for it anymore.

There are enough companies who just overtake. Google, heroku whatever.

But it would probably a good idea to try to help Jim in his work.

</comment><comment><USER47> As far as I understand it nobody but the git team is paying for hosting. Why neither Github or Heroku are paying for this? They are built on top of git. Millions of tech dollars go to political causes right now yet nobody is willing to give $230/mo of free hosting to git website, the most used VCS today? Talk about priorities. And it's not the first time, plenty of open source projects used by billion dollar companies receive 0 of funding.

Edit: GIthub seems to be paying for that but Heroku shouldn't even bill them.

<comment><USER48> GitHub is paying for it.

<comment><USER49> From the Hacker News Guidelines[0]

> Please don't insinuate that someone hasn't read an article. "Did you even > read the article? It mentions that" can be shortened to "The article > mentions that."

[0] [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

<comment><USER48> Didn't know that, thanks.</comment></comment></comment></comment>


Something I've noticed about the rich and powerful - <AUTHOR> http://www.dustincurtis.com/1.html <comment><USER3> "They all seem to be extremely (in some cases obsessively) curious about why they, in particular, have been successful. It seems almost as though they feel undeserving, as if the rest of their lives have been an attempt to prove their first success had a reason or formula."

You find the same thing if you talk to successful people in any field, once they get to talking shop. E.g. a successful playwright will be very curious about what drove his first big success. Not (necessarily) because he feels unworthy, but because he wants to write more successful plays.

The curiosity of the successful about success at whatever they've been working on is practically universal. It's partly cause and partly effect.

<comment><USER4> That's interesting. The reason I wrote a post about it, though, is because it seems somewhat disturbing/alarming to me. I think many first time startup founders have a very visceral, almost animal-like feeling that if they make it big and become a multimillionaire, their problems will be solved and they will have won the game.

It doesn't appear this is the case though. In fact, some of the people I have met have told me they felt _worse_ after succeeding the first time. To quote one of them, who said he got bored:

"I actually learned this lesson even before I had any disposable income by playing the Sims. I cheated and had loads of cash. Made my house amazing, etc. But everybody was still unhappy and there was nothing left to do in the game."

It's good to see the post below by lionhearted, but I get the feeling that isn't a common occurrence.

<comment><USER5> (Solving the money problem) != (solving all my problems)

Successful startups generally solve the money problem. That's all, nothing else.

Solving the money problem doesn't solve loneliness. It doesn't keep you warm at night or fix problems with a messed up family situation, etc...

But, once you've solved the money problem, you tend to have more time on your hands to focus on other problems.

<comment><USER6> Solving the money problem _will_ keep you warm at night, assuming you pay your heating bill...

(And if you've got a messed-up family situation, money can put some serious (geographical) distance between you. :)

<comment><USER7> Maybe he was referring to a bed warmer (wink wink).

</comment></comment></comment></comment></comment><comment><USER8> They talk like that because you want them to.

These people are defined by their success. Audiences want to hear about it, often looking for insights. For obvious reasons nobody knows exactly what they did right and thus end up sounding as if in doubt, not least because they don't want to sound pompous.

So when you listen to tech millionaire turned hacker Ben Bitdiddle, unless (A) you insist he talk about his surfboarding experiences or (B) Ben doesn't mind coming through to you as an egomaniac, the observation described here is very much expected.

<comment><USER9> > nobody knows exactly what they did right

I think pg knows pretty much what he did right, and has explained it to us.

<comment><USER10> but tell me why failure rate still so high?

<comment><USER11> Because 'doing it right' means going from a 90% failure rate to a 60% failure rate.

</comment></comment></comment></comment><comment><USER12> This is why modeling your behavior after a particularly successful figurehead is of dubious value. It's very, very difficult to go back and explain why things worked out the way they did. Bill Gates made some brilliantly forward- thinking strategy decisions for his OS, did it at exactly the right time, and became a billionaire. Had a butterfly farted in an IBM exec's ear early in the process, things could have turned out completely differently.

</comment><comment><USER13> _"Regardless of what level of success they may have achieved in their chosen field of work or study or what external proof they may have of their competence, those with the syndrome remain convinced internally they do not deserve the success they have achieved and are actually frauds. Proof of success is dismissed as luck, timing, or as a result of deceiving others into thinking they were more intelligent and competent than they believe themselves to be."_

<http://en.wikipedia.org/wiki/Impostor_syndrome>

<comment><USER14> But most of success (especially at the upper echelon) is due to luck & timing; I don't know if that's a true syndrome.

<comment><USER15> It's even worse when the person who had the luck/timing in a previous success sets out to recreate that success and doesn't adjust to the changes that have occurred since. At least one such startup I've worked at the CEO had what we referred to as "Delusional Rich Guy Syndrome". Many of the investors he teamed up with also shared the same disease.

It's the idea that somehow, all the other people that failed lacked their special innate abilities so this time it will be different.

</comment></comment></comment><comment><USER16> I think the problem is that these people are not willing to accept that luck had a great deal to do with their success. Instead of worrying that they are not truly the master of their own universe, they should accept the fact and be thankful for what they have. I think they should feel an obligation to 'give back' to those who are less fortunate, because there are others out there who have worked just as hard and just didn't get lucky. The truly classy rich people all seem to get this.

</comment><comment><USER17> I think this is part of a theme mentioned in one of pg's talks, namely that people still have it ingrained in their psychic that getting lots of money can only be done via fraudulent means (since for such a long time that was more or less the case).

</comment><comment> puzzle-out Is there a link between high achievers and boredom? I get a rush when something comes together, but afterwards comes the inevitable deflation - <USER2> then?

<comment><USER18> I actually get bored well before something comes together... as soon as I can _see_ the solution, it takes quite a bit of discipline to actually execute it. Since I haven't yet highly achieved, I'd say that if there's such a link, it's to a sweet spot rather than "more easily bored -> more acheivement".

<comment><USER19> Are you by any chance an INTP? What you describe is a strong indicator for that personality type.

<http://www.intp.org/intprofile.html>

"The drive to understand things that are not yet understood is a very powerful force in the life of an INTP. Where the Ti preference is strong, this drive can override the experiential element so strongly that the INTP will become quickly bored with anything that he has successfully analysed to the point of understanding it. Once understood, it has nothing left to offer, once the satisfaction which comes with achieving the goal of understanding diminishes."

<comment><USER20> INTJs are like that too, but they see the whole picture and still want to push the product to completion. Contrary to INTPs, they are not satisfied with just solving the technical problem, they want some elegant closure as a whole through deployment. But they still have a hard time completing those last little tasks to cross the finish line, because it's already crossed in their head through their vision.

<comment><USER21> Incidentally, readers might think that this is psychobabble, but as an ENFP with ENTP/INTP tendencies, I've continually struggled with starting projects that I never finished. Then I met my cofounder. He's INTJ/ENTJ. In our working relationship, he's continually pushing towards completion. The amazing thing is that then completion _actually happens!_ It's wonderful!

</comment></comment></comment></comment></comment><comment><USER22> Very true for me personally. I built a small company with a partner that was doing low-six figures annually. I bought him out and was running the show. And on a weekly basis, I was scared to death that it was luck, a fluke, that I couldn't replicate it if it all fell apart.

It made me shake in my boots, be overly cautious. What if it was just dumb luck? What if the wheels came off? When I set down to put my second company together, and it succeeded, it was like a huge weight off my shoulders. It's like - okay, you drop me in a foreign country without speaking the local language, clothes on my back, and $20 in my pocket, and I'll be back within a couple years.

I can't say exactly what it is, but I think the idea of having something you don't "deserve" (or couldn't get back) is fundamentally really scary to people. You see the same pattern with people dating someone they perceive out of their league, and you especially see it with corrupt political leaders. For me, not knowing if I'd made it or gotten lucky would haunt me on perhaps a weekly basis until I did it again.

And now? If everything melted down, I'd go hang out on the beach and read some books for a bit, then jump back in the saddle after I got sick of reading or beachlaying. It's a much better feeling than wondering if it was dumb luck.

<comment><USER23> I never understood this. I mean it's a beautiful outlook, but every time I hear people "jumping back into starting companies," it's totally confusing. To me, making that statement is akin to I'm going to walk across the room and figure out why when I get there.

I probably just don't "get" it. Maybe one day. Hopefully.

</comment></comment><comment><USER24> Off-Topic:

I like the way his articles are setup. Definitely one of the most aesthetically pleasing websites I've visited in a long time. And each page is customized...

</comment><comment><USER25> Mildly off-topic, but nice typography.

<comment><USER21> The page design is both inspirational, and raises the bar frighteningly high.

</comment></comment><comment><USER26> When, after many attempts, I wrote the first SF&F story that I thought might be saleable, I decided that I wasn't going to try publishing it until I could write what I thought were good stories on a routine basis. I didn't ever want to be a one-hit wonder, even to the extent of only having one published SF&F story.

</comment><comment><USER27> you ever notice how people who save others and are interviewed afterward are so humble? "oh no, I'm not a hero. I just did what anyone would do" after pulling babies from a house fire or something. Now I know they do this partly because it is expected. But screw that. If I ever do something that is widely recognized I will be just like Mike Tyson on the subject. "Thank you for the acclaim that I've always known I deserve! You should all feel grateful to be in the same room of someone as awesome as me!"

This might be part of the reason that I won't be successful. My personality type does not often become successful (at least not wildly so).

</comment><comment><USER28> Go read Gladwell's Outliers. It explains all this.</comment>


Sarah's Non-Traditional Job Search Experiment - <AUTHOR> http://livorna.com/job/

<comment><USER2> So what I learned was that Sarah is not a team player. Maybe not by choice, but there it is.

She also doesn't think her resume/CV/whatever that is should actually talk about her qualifications, or at least show them off.

She claims to be extremely passionate, and yet hasn't tried to show any of her portfolio.

She thinks she's smarter than almost everyone she's met.

And she's only willing to look for jobs in a small area.

The bottom line is the team player bit, though. You can't ask to join a team after saying you aren't a team player. That you're non-traditional. After you buck the entire system and then fail to sell yourself.

Sorry Sarah, but if I were in a position to hire you (I'm not, mainly because of the location specified) then I wouldn't take the chance on you. You show a lot of promise for disruption, and not a lot of promise for productivity.

<comment><USER3> How did you get "not a team player"? I read it that she was fed up of being the only "dev" person, and wants to join a team of dev's. Not having being part of a team is not the same as not being a team player in my book.

She says she's the smartest engineer she's worked with. Not at all "smarter than everyone she's met". I took that, from the rest of the text, to be saying that she hasn't worked much with other passionate and experienced engineers/devs and wants the chance to. I don't see it as a negative.

She knows she likes the Boston area, and doesn't want to move. It limits her options, but otherwise I don't see how that's negative?

If I was in a position to hire people and in the Boston area I'd definitely invite her to the office for a coffee and a chat (read: informal interview) as she's precisely the sort of person I'd want to work with. I wish her luck finding the right company.

<comment><USER2> "Not a team player" comes from the fact that she's got -no- friends who do what she does. Not even people she's worked with! She hasn't gone to any meetups, or attempted to find others like herself. She hasn't looked for a mentor. She thinks she was smarter than any engineer she's ever worked with, and could learn -nothing- from them. ... I've worked with people far dumber than me, and I've still managed to learn things from them. She's not trying.

She wants a job, but she's more interested in living in a certain area than having a good, interesting job. Everyone has priorities, but this one is somewhat telling.

<comment><USER3> I don't think it's even necessarily a bad thing that her priority is not "the best job" but living in an area she likes (presumably near her "other" friends). This post makes no mention of how active her social life is outside of geekery/engineering and I think it would be wrong to make any presumptions.

Just because "the best job in the word" isn't her priority, it doesn't mean she wouldn't like it. This is her saying "I'd really love a job that matches the following criteria, and is a little outside the box". It'd be bloody awful to be constantly surrounded by people for whom their day job was the most important thing in their life. I got the impression she was currently employed, and just looking for something a little more exciting and suitable for her - if it's out there.

<comment><USER2> I'm not saying your job has to be the most important thing in your life, but you're going to be doing it for 8 hours a day, 5 out of 7 days each week. As you sleep another 8 hours a day, that leaves 8 hours a day (16 on weekends) for the rest of your life. It's almost half your life!

For something that takes up almost half of your life, I expect you to treat it as something special.

Also, her note starts out 'I need a job' and that traditional methods have failed her. That almost always means she doesn't have one.

</comment></comment></comment></comment></comment><comment> mkr-hn I don't see a reference to relevant experience, an indication of what kind of job you want, links to projects, or anything that could show a potential employer what you can do. I'm all for defying tradition, but you need to at least be aware of why the tradition exists.

All I see on the root of the domain is a test page for something called OpenPanel. _That_ looks interesting. I passed it along to my web host.

</comment><comment><USER4> Clearly she's a minimalist front-end developer lol

I just don't know why an employer looking for a good front end dev would hire someone based on this, It does not prove any skill and mostly talks about how great she thinks she is, I am confused as to why this is even on the front page?

</comment><comment><USER5> For someone who has done 10 years of front-end web development work, this page is awfully sparse.

<comment><USER6> I eventually came around to doing the same thing on my domain after about a decade of web development work, too.

I wonder how many other web developers have spartan pages like this.

<comment><USER7> The cobbler's children have no shoes.

</comment></comment></comment><comment><USER8> If I said I was a writer then used a disposable biro and the back of a receipt to show off my writing skills. Would you hire me?

The page needs design.

</comment><comment><USER9> Reduce your LinkedIn page to a plain-text with no links to a portfolio/recommendations/concrete work experience (10+ yrs of * doesn't cut it) and ask to start working without an interview and voila, it's 'non- traditional.'

</comment><comment><USER10> As a fellow hacker who has trouble being verbally eloquent during interviews with technical details, I must say: get over it. Interviewing is a skill, and you have to actually prepare, rehearse your responses and talking points, and develop an ability to talk at length about your technology of choice. It's not an inherited trait.

</comment><comment><USER11> That kind of thing works better for designers with mad design skills, I suppose.

Are there examples of programmers doing an impressive "hire me" page?

I am toying with the idea to turn my crappy web site into an Ultima clone. Instead of clicking links, visitors would have to walk through my realm.

<comment><USER2> I considered making one, but in the end, I decided my work history and GitHub account were much better than anything I could make up just for job hunting.

</comment></comment><comment><USER12> Sarah needs a portfolio.

<comment><USER13> As she said, she has a portfolio. I think her goal here was to try to get interest from people based off of more than just her portfolio, rather what she wants and needs in her next opportunity. Perhaps she feels that the wrong opportunities may have come from posting a portfolio. Perhaps she feels the best opportunity will be from someone who simply gets where she is coming from. Some of the best working relationships come primarily from a personality click, the work in some cases can be secondary consideration once you know the passion is there.

</comment></comment><comment><USER14> When I first read Sarah's post, I was intrigued by the proposal that she is willing to just come in and start working so somebody could get to know her skills and personality in a real work environment.

However, bringing on a new person, even in that kind of role, consumes resources from the entire team as we get her up to speed. How long does it take to evaluate somebody like that? A few days? A week? I would pay her for her time though.

But why bring in Sarah? Why not somebody else who I have more information about? We often bring on contractors and sometimes end up hiring them. That is essentially a get-to-know-you-first relationship too.

So it would help to see some kind of work history, even if it is non- traditional. When hiring I look as much for self-direction as experience.

The good thing for Sarah and this approach is that she has been noticed, and we are talking about her. If she was located nearby I would just email her and ask for more details.

Let us know how it turns out, Sarah.

</comment><comment><USER15> I like this. It get's straight to the point. It's unconventional. It seems honest.

We're not in Boston and we're not hiring, but were that different I'd definitely talk to Sarah.

</comment><comment><USER16> I recently heard of an old persian saying that goes something like "Try to learn something from everyone or you will always stay dumber than them".

</comment><comment><USER17> I think that this Job Search Experiment shows what kind of person Sarah is, and that is of great spirit and definitely great humor. Must be quite fun to work with Sarah. In the opposite side, wccrawford way of approaching the problem is somehow steroitipical of what a boring job offer to work with boring people can be.</comment>