Hacker News new | past | comments | ask | show | jobs | submit | nickknw's comments login

Oh that's clever! What a cool way to do your personal site. Definitely makes it stand out


> healthy primary income provided by the synergy between them and their community

Definitely interested in this.


As a pianist the key here would be musical versatility, there is a lot of work but it is spread across musical domains.

The musical skills might include reading literacy, proficiency in improvisational idioms and the ability to teach these things.

The more difficult realm might be establishing a working band of professionals, per individual the professional attitude would be worth more than sheer musical skill. Professionaly minded people working together can build skills that will eventually surpass what an individual can bring alone.

Networking is important, there's lots of ways to engage with your immediate community and it has always helped me to reach across as many professional aisles as I can. How many high functioning professional musicians do you think the average person knows? You should be one of them for the people close to you.

EDIT: I'd like to add venue versatility. Most discussion seems to be around entertainment venues but what about educational, accompaniment, theathrical, ceremonial, religious (I do not personally partake in this).


As something like a solo pianist, I would say you might be able to scratch out a living using all the various outlets you described -- teaching being primary among them as far as ways to generate income.


Haven't tried Reflux but I would recommend trying Redux before it. It is heavily inspired by Elm and has been very pleasant to work with. Reflux also bypasses the 'unidirectional data flow' part of Flux, which gives you added convenience for some things at the cost of more complexity.


Well this is pretty exciting. This opens up the door for PS4 games to be written in any language that uses LLVM as a backend, right? So in the future, PS4 games could be written in D, Rust, Ada, ActionScript...

Especially with the indie focus Sony has had, this could make it much much easier for people used to creating games with ActionScript to get their game on a console.

Is there something I'm missing? This seems too good.


You could already do that. LLVM has been the PS4 compiler since day 1. You still can't do anything with it if you aren't a licensed developer.


Oh I see - you just needed to be a licensed developer to get their version of it before, is that it?

> You still can't do anything with it if you aren't a licensed developer.

Not sure I follow - what is stopping non-licensed developers from developing and testing games on their own PS4s now that this has happened?


Retail consoles only run code signed by Sony. When you become a licensed developer you get special consoles called devkits that can (among other things) run unsigned code.


Not only that but devkits also come with the SDKs and tools and access to the developer network. Plus they cost thousands of dollars. They also usually have double the specs of the retail console to run debug code and tools. Even USB connectivity and plugins for VS to debug code running on the devkit remotely.

Also on our Vita devkits there is no battery to make space for the extra ram.

Even with the open sourced compiler you're still missing most of the toolchain.


Well that's a bit disappointing, although probably pretty important to their business model.

Will make the news of a jailbreak for PS4 that much more exciting at least :)


>> Not sure I follow - what is stopping non-licensed developers from developing and testing games on their own PS4s now that this has happened?

I don't want to come across as being mean or anything but...

How charmingly naive!!

Sony (and the other console makers, to be fair) go to absolutely incredible lengths to make sure that people absolutely do not get to run their own code on these machines. And then they sue anyone that finds a way to do so.


>Sony (and the other console makers, to be fair) go to absolutely incredible lengths to make sure that people absolutely do not get to run their own code on these machines. And then they sue anyone that finds a way to do so.

Also, to be fair, PS4 is the first Sony's home console that does not run user's code. All the previous Playstations had such an ability in one way or another:

Net Yaroze on Playstation http://en.wikipedia.org/wiki/Net_Yaroze

Linux Kit on PS2 http://en.wikipedia.org/wiki/Linux_for_PlayStation_2

And the PS3, initially, came with the ability to install user OSs http://en.wikipedia.org/wiki/OtherOS


I don't see a reason to buy a console unless it has a large number of exclusive titles that are worth playing. (Which in itself is anti-consumer. I want the games not the hardware)

PC gaming is currently the best choice. All the freedom combined with better hardware. The only disadvantage is the high cost of entry but you can easily save money by buying games during the big sales on steam.

Handhelds are a different story though. The games are often a lot better than mobile games.


Well....I have both a beefy gaming pc and a next-gen console. Yeah, my PC is more powerful and can run anything you throw at it. But most of the time I simply enjoy just sitting on the sofa with a controller in hand, one click the console is on(and it turns my TV and amp on as well), another click and the game is launching. The system is quiet and uses less energy - my £1200 gaming machine sure has an overclocked CPU and a custom cooling system,but it doesn't change the fact that it has a total of 7 fans and uses 400W while running games - I had it in my living room for a while but didn't enjoy the whiz of air. In fact, I bought Dragon Age Inquisition on PC to enjoy better graphics, but after the latest Nvidia Driver broke the game(huge FPS spikes, artifacts everywhere) I just bought a console version. Pop the disc in, go. No drivers, no config, it just works. Sure the graphics are slightly worse,but not enough for me to care. And the price of games was literally never an issue for me - just the lack of time to actually play them.


The retail versions of modern consoles enforce cryptographic signatures on everything, so nothing will run on them without going though MS/Sony/Nintendo first.

Officially licenced developers have special devkit systems with more lax security.


Sometimes fancy extra features too- I believe I've heard of (and seen photos of) devkit systems that interface to a PC for uploading code and/or debugging.


I have a PS4 devkit on my desk. Basically you develop in Visual Studio like you would normally, press run and the application gets deployed to the PS4 over lan - debugger also attaches remotely. So from the programmers point of view you don't even care that your code is running over the network. In fact, I have worked with Wii/WiiU/PS3/PS4/X360/XOne devkits and you can always deploy remotely through lan - with the only exception being the Wii, which used 3 USB cables at once for deployment and debugging.


That's pretty sweet! No wonder with the Wii, I understand it was the last holdout of the older group of consoles, what with the double-clocked GameCube CPU and all.


Don't think that Wii U is much better....it has a lan port, but literally every tool is command line based and their debugger looks like notepad from Windows 95 with few extra buttons tacked on. There is a plugin for Visual Studio integration, but it's super slow, when you hit a breakpoint in code it takes over a minute to trigger in the IDE, so everyone uses their horrible outdated debugger instead. Nintendo hardware is very weird to develop for.


I don't seem to have access to the VS plugin, but when I place a breakpoint in the Green Hills IDE it is indeed about 30 seconds for it to catch up. It works, but I do find it frustrating.


Glad to see another language that has chosen to avoid NullPointerExceptions. Some of you might take issue with the way it is implemented (special syntax vs general type), but IMO it is still much better than having NPEs.


> Digressing, were there any discussions about using var like in Swift (instead of let mut)? What is the rationale for not making that more minimalistic?

I was interested in the answer to this too. I found these which helped me understand:

https://github.com/rust-lang/rust/issues/1273

https://github.com/rust-lang/rust/issues/2643


It looks similar to Elm[1] to me. Which is great as far as I'm concerned, I'm a big fan of that approach - the more exposure it gets, the better!

[1] - http://elm-lang.org/


Here is a practical everyday example where languages that can represent emptiness in the type system come in handy.

He ends up using pointers and mentions: "Using pointers also means that clients of the library will need to perform their own nil checks where appropriate to prevent panics."

Looking forward to using Rust :)


> Using pointers also means that clients of the library will need to perform their own nil checks where appropriate to prevent panics.

In practice, as your Rust comment alludes, I find working with nil properties in Go types (used to shuffle between the DB and JSON) to be quite painful. I end up keeping track of a lot more state than I really want to, and errors can be introduced subtly.

In Go, you can usually use a type's zero value without doing anything special. But if that type contains any nil properties, you can't presume this anymore. If I have:

    type Thing struct {
        ID int
        Bad *string
    }
I then have to do nil checks in every method that might handle Thing, or I have to make it accessible only via functions which perform those checks for me in advance. Either way, much less convenient.


> How would you like to be largely invulnerable to XSS? No matter if someone managed to trick your server into writing <script>alert(1);</script>, have the browser straight up refuse it?

I don't quite get how this header makes you invulnerable to XSS, would someone mind explaining?

It seems like it only prevents XSS attacks from loading remote javascript files. What's to stop the attacker from just injecting the entire script inline? If you can get a small piece of javascript to execute you should be able to get a larger piece to execute just fine.

I can see how it makes XSS more inconvenient, but I don't understand how it makes you largely invulnerable to it.


Inline Javascript is outright banned by default. Read the HTML5Rocks article they linked, it is much more comprehensive and answers most of the questions like that that I had.


Ahh, now that makes sense, thanks! The HTML5Rocks article cleared up my concerns.

For anyone reading this later, it was the section starting with this paragraph:

Inline Code Considered Harmful

It should be clear that CSP is based on whitelisting origins, as that’s an unambiguous way of instructing the browser to treat specific sets of resources as acceptable and to reject the rest. Origin-based whitelisting doesn’t, however, solve the biggest threat posed by XSS attacks: inline script injection. If an attacker can inject a script tag that directly contains some malicious payload (<script>sendMyDataToEvilDotCom();</script>), the browser has no mechanism by which to distinguish it from a legitimate inline script tag. CSP solves this problem by banning inline script entirely: it’s the only way to be sure.


'inline' is also treated as a separate source. If your policy is 'self' that only means same-origin code is allowed to run, and inline JS is disabled.


This exchange has really helped me understand more about Docker and why and when to use it. Thanks!


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: