Intro to kernel debugging - <AUTHOR> https://blogs.msdn.microsoft.com/meason/2016/06/17/intro-to-kernel-debugging-1/ <comment><USER2> I should also remind, that radare2[1], which is free and open source reverse engineering framework and can run also on Linux, *BSD and OS X, supports connection to WinDbg/KD[2]. So you can use your favourite operating system and debug Windows kernel in virtual machine or via debug cable.

It's also notable, that this year we're running Google Summer of Code[3] and hosting our own Radare Summer of Code[4]. And for the latter we're fundraising[5] the money to pay our accepted students.

[1] [http://rada.re](http://rada.re)

[2] [https://github.com/radare/radare2/blob/master/doc/windbg](https://github.com/radare/radare2/blob/master/doc/windbg)

[3] [http://radare.today/posts/gsoc- midterm-2016/](http://radare.today/posts/gsoc-midterm-2016/)

[4] [http://rada.re/rsoc](http://rada.re/rsoc)

[5] [https://www.indiegogo.com/projects/radare-summer-of- code-201...](https://www.indiegogo.com/projects/radare-summer-of-code-2016#/)

<comment><USER3> I just started doing infosec coursework in my spare time. I go to cert courses and despite many people being better read than me, none of them know radare at all. I have a very introductory interest in the RE end, and the Radare2 book (which is a tome, full of so much free goodness) is just like a treasure troves of the infinite learning possibilities I will need to exploit it.

Seriously, thanks to the radare devs (if you are not one, xvilka, you talk like you are; in that case definitely thanks to you too). I am surprised in the era where people still people handsomely and brag about IDA Pro and scripts for it, I only learned about radare ironically from HN this year.

</comment></comment><comment><USER4> While I have no particular desire to use Windows for anything, I think it's very interesting to see the engineering tools used to support it. Though it's a proprietary system, it is nonetheless a large and successful one. I'm particularly interested in any information about the parts of the stack which collect OS and application crash dumps from a large distributed install base for remote post mortem analysis; hopefully there will be some articles about that too!

<comment><USER5> I work with Microsoft's support and I have fair idea about system used to automatically analyze dumps uploaded for all the support issues.Although i have not worked on the system itself ,I have contributed many rules for it in the past.This will not be as large as the OS or application crash dumps collected by the windows error reporting but I think the idea should be similar.

In the support scenarios, any dumps(can be up to multiple GBs of size as used by the process) collected and uploaded to the portal will be analyzed by a custom execution engine which is based on dbgeng.DLL .You can find a similar automated analysis with tool DebugDiag[1] which contains script for known issues such as crash,hang or high memory.

[1] [https://www.microsoft.com/en- us/download/details.aspx?id=499...](https://www.microsoft.com/en- us/download/details.aspx?id=49924)

<comment><USER3> Ok, I'll bite.

I have been doing break-fix for Windows, *nix, and Mac systems for a long time. I have worshipped at the altar of Russinovich and Sysinternals gods for as long. I have wanted to be able to sit with Process Explorer, Process Monitor, and Windbg and know everything that goes wrong with a system from weird driver buginess to Word crash for reasons ignortant users can show me happening once a week but I cannot find evidence. I know the basics, but I really want to go up to the advanced levels with this. After years, Windows is still a black box to me, more than it should be after reading more than basic material, and that upsets me.

I see two problems here:

1) Where is good comprehensive material on the topic?

I see pages like this, but no unified material and training. On the Sysinternals book, I caved and bought the Bible, Sysinternals v6 back when it was current. I routinely show it for geek cred to other IT friends; few even know it exists. I met some more advanced consultants a month ago and learned of the Aaron Margosis companion ([https://www.amazon.com/Windows-Sysinternals- Administrators-R...](https://www.amazon.com/Windows-Sysinternals- Administrators-Reference-Inside-ebook/dp/B00JDMPFO2/)). But for the advanced stuff for WinDbg I know there are tier 2 customer engineers who know stuff inside out who post blogs like this, but find no really thorough books/material/courses I would gladly pay for to learn the basics of this skillset. Advice? Suggestions? I wish Julia Evans (jvns.ca) counterpart exists for the beauty of Windows debugging tools, but I have not found her/him/it yet.

2) Does tooling exist beyond the Sysinternals and debuggers I keep missing because I am uninformed? Help!?

On the point of Julia Evans, tooling in Windows is good, but I have not found much beyond the blessed debuggers and the gap between these debuggers+Sysinternals stack and that of the raw power tools of the Unix landscape of late: dtrace, strace, ltrace which go into crazy levels of introspection. I looked after reading this and stumbled upon maybe Dr. Memory but have not had time to learn it. Do you have counterpoints or suggestions?

Again, I would love to learn fu like Julia Evans in the Unix space and begin a love affair with the Windows side of debugging tools, but the landscape is more confusing. I would seriously love to hear from you.

Thanks so much for pointing us to DebugDiag. I have never found this and I am checking it out now. Very exciting!

UPDATE: I am reading the Code Machine posts listed in another comment, but it seems that Advanced Windows Debugging book might be the start of what I am looking for. Would love to know if you have other suggestions.

<comment><USER5> If you work with .NET ,best place to learn all common scenarios like hang,crash,high memory are Debugging Demos [https://blogs.msdn.microsoft.com/tess/2008/02/04/net- debuggi...](https://blogs.msdn.microsoft.com/tess/2008/02/04/net-debugging- demos-information-and-setup-instructions/)

Many troubleshooting steps in that blog also covers DebugDiag .DebugDiag is an amazing tool which can help you collect dumps automatically for crash,high memory,IIS slow response etc.

Another tool which can help you profile your applications easily is PerfView [https://channel9.msdn.com/Series/PerfView- Tutorial](https://channel9.msdn.com/Series/PerfView-Tutorial) .

Perfview is built on the (Windows Event tracing) ETW infrastructure windows have .You can think of it as Lttng or perf_events linux equivalent but built into everything windows have. I think process monitor is also built on ETW. After debugging ( which is not required for lot of scenarios) the most powerfull thing in troubleshooting any issues in Windows is ETW traces IMHO.So understanding and analyzing ETW will help you troubleshoot a lot of issues.

[https://blogs.msdn.microsoft.com/ntdebugging/2009/08/27/part...](https://blogs.msdn.microsoft.com/ntdebugging/2009/08/27/part-1-etw- introduction-and-overview/)

XPERF is built to consume ETW traces [https://blogs.msdn.microsoft.com/ntdebugging/tag/XPERF/](https://blogs.msdn.microsoft.com/ntdebugging/tag/XPERF/) [https://blogs.technet.microsoft.com/askpfeplat/2013/03/22/tr...](https://blogs.technet.microsoft.com/askpfeplat/2013/03/22/troubleshooting- windows-performance-issues-using-the-windows-performance-recorder/)

Also Advanced Windows debugging[1] and Advanced .NET debugging[2] to be very good for learning debugging in windows land.

[1] [http://www.amazon.in/Advanced-Debugging-Addison-Wesley- Micro...](http://www.amazon.in/Advanced-Debugging-Addison-Wesley-Microsoft- Technology/dp/0321374460) [2][https://www.amazon.com/Advanced-NET-Debugging- Mario-Hewardt/...](https://www.amazon.com/Advanced-NET-Debugging-Mario- Hewardt/dp/0321578899)

<comment><USER3> Seriously, hitr, thanks for you taking the time to respond.

Also, the dead comment appears to have alluded to the 71-660. Once other things settle down, I am diving into Sysinternals and these books when I had put them aside.

Seriously, thanks a bunch!

</comment></comment></comment></comment></comment><comment><USER5> This is a good introduction .For more details on the internals I find these very good.

[1][http://www.codemachine.com/articles.html](http://www.codemachine.com/articles.html)

[2][http://advancedwindowsdebugging.com](http://advancedwindowsdebugging.com) -is a very good book for user mode debugging

</comment><comment><USER6> > In the Hyper-V settings for the VM, set COM 1 to use a Named Pipe

I used to have an RS-232 cable in my office, for Kernel debugging. Before VM prevalence the debugged and the debugee would be two physical machines, linked with a physical cable over their COM ports. Once the VPC/VirtualServer came out with COM redirect and the debugger support for it, I never looked back.

<comment><USER7> Kdnet is a faster and easier to setup than COM ports for debugging Hyper-v VMs. I couldn't find it on MSDN, but there is a blogpost here: [http://withinrafael.com/how-to-set-up-synthetic-kernel- debug...](http://withinrafael.com/how-to-set-up-synthetic-kernel-debugging- for-hyper-v-virtual-machines/)

</comment></comment><comment><USER8> I miss Soft-ICE.

</comment><comment><USER9> I remember SoftIce times, I've never seen something similar.</comment>


America's Pizza Circulatory System - <AUTHOR> http://www.youtube.com/watch?v=OlIelAWikWQ

<comment><USER2> How the series was ported from the UK to the USA: [http://www.broadcastnow.co.uk/in-depth/behind-the- scenes/ame...](http://www.broadcastnow.co.uk/in-depth/behind-the- scenes/america-revealed-pbs-uk/5043279.article)</comment>


Ask HN: Hacker approach to NON-tech news? - <AUTHOR>

I'd like to be more informed about world news that actually matters in 2013.  I'd like to waste as little time as possible sorting through the sensationalist stories, though I do want to stay aware of the headlines people are talking about. Any suggestions? <comment><USER2> Check out qz.com

'We're also a nerdy bunch, embracing the opportunity to create a newsroom that is wholly focused on digital storytelling. We view the creation of Quartz as just the beginning of an ongoing process in discovering the best ways to report and deliver information online. Developers and journalists, sometimes one-and-the-same, sit next to each other in the Quartz newsroom as we continually iterate and experiment. We know that the future of news will be written in code.'

</comment><comment><USER3> Only the obvious ones: reddit, maybe Digg. Yahoo/Google News.

A weekly news magazine fits the bill, their web sites are updated daily of course. Personally, I use The Economist web site for that.

</comment><comment><USER4> I like browsing news.google.com - seems to do a pretty good job at aggregating

</comment><comment><USER5> a quick look over cnnmoney or bbc.co.uk will give you enough</comment>


Venezuela Offers Asylum to Snowden - <AUTHOR> http://www.nytimes.com/2013/07/06/world/snowden.html?ref=world

<comment><USER2> OK, so how does he actually make his way to Venezuela when his passport is withdrawn? Will Venezuela swing a plane by the russian airport and pick him up? Anyone know?

</comment><comment><USER3> This man has done his part. Let him rest a bit.

<comment><USER4> People might also be more effective if they relented their narrow focus on this one guy, and turned to the hordes of imprisoned people. (The US imprisons the most.)

Not only does this become more diverse in support, it would have the incidental effect of making things easier for Snowden. Because the government no longer can worry about jailing just one guy. but risks pressure to release all the other normal people rotting in prison. (Governments do relent when faced with sufficient costs, so as not to risk their other aims. Of course, they spin this as benevolence; or point to some new politician cog as bringing hope and change.)</comment></comment>


Show HN: CheckPhish – Zero Hour Phishing Detection - <AUTHOR> https://checkphish.ai <comment><USER2> Well done: in my opinion you built something that people want. In your FAQ you wrote:

At the heart of CheckPhish, is an Artificial Intelligence based engine that looks for indicators in a website in realtime and ranks it for phishing. This engine learns continuously from the ever-changing threat landscape and brings to you the latest phishing related intelligence.

It would be great if you could expand on that. I am particularly interested in knowing how you would deal with 'false alarms'

<comment><AUTHOR> Thanks @lozzo. CheckPhish proactively indexes pages of popular brands. Since the engine can identify brand automatically, and we know assets of the test url vs that of real brand, it's easy to identify fake vs real page. Keying on brand in this way, helps us avoid false alarms.

</comment></comment><comment><USER3> I'm just seeing this today. Great work! Looks like it could be very useful!

Would it be possible to integrate this into something like a Palo Alto, so that you could instantly add new blocking rules for any content containing one of the urls?

How about a browser plugin that strips any phishing urls that match? I don't know much about Javascript, but maybe you could even just source in a library and run it client side?

<comment><AUTHOR> Hi dnsuh,

It is definitely possible to integrate this Palo Alto networks NGFW or any email or web scanning appliance via our APIs.

As for browser plugin, we can use APIs and check url in real time and block phishing urls. We just haven't had the resources to develop one.

It is not possible to do full detection at client side at the moment as our AI engine needs quite a bit of computing power.

here is the link to our python client [https://github.com/redmarlin- labs/neo](https://github.com/redmarlin-labs/neo)

<comment><USER3> Thanks for the information! Good luck with the project!

<comment><AUTHOR> thanks dsnuh!

</comment></comment></comment></comment><comment><AUTHOR> thanks folks. we would love to hear what can we improve and what features would be useful?

</comment><comment><USER4> I could see this being very useful. How did you initially populate your dataset with urls?

<comment><AUTHOR> thanks @abra_kadabra. we proactively scan and index popular brands and add them to our AI engine.</comment></comment>


Second Life frees source code under GPL - <AUTHOR> https://boingboing.net/2007/01/08/second-life-frees-so.html <comment><USER2> This was ten years ago. Since then various organizations, most notably InWorldz LLC, have improved their forks of the server code a great deal.

So far, these new grids are somewhat constrained by trying to remain compatible with Second Life, but that won't always be the case since Linden Labs will probably give up on Second Life at some point.</comment>


A 10-Year-Old's Journey, from Lemonade Stand to Silicon Valley - <AUTHOR> http://dealbook.nytimes.com/2014/10/07/a-10-year-olds-journey-from-lemonade-stand-to-silicon-valley/ <comment><USER2> Laura California 6 hours ago

Why do I get the queasy feeling that the dad is exploiting the daughter?

Eric Harr Marin County, Calif. 22 minutes ago

Hi Laura:

Thank you for taking the time to post your comment.

As a parent, if I read this article about someone else's daughter, I would have the same initial reaction that you did: "Is the dad exploiting the daughter?"

However, I am Vivienne's dad and I will tell you, from my heart of hearts, that we are simply doing everything we can to lift up Vivienne and help her realize her dream of giving anyone the chance to do what she did -- to make a stand and make a difference.

When I left my well-paying job to support Vivienne, truth be told, it was scary. I have a family to support. Over the past two years, we have made tremendous sacrifices to see this dream through, and we are fully, emotionally invested in it. I believe I made the right choice.

I know you don't know me, and I know these are just words on a computer screen. I hope we might meet one day, so that you can look into my eyes and see the sincerity in them. I will tell you that this experience has been the most rewarding journey of our lives.

Mark Twain once said: "The two most important days in your life are the day you are born and the day you find out why." The day Vivienne set up that first lemonade stand was the day I found out why.

Thank you for listening. I wish you all the best, Laura.

Eric Harr

From the comments on nytimes.

</comment><comment><USER3> > Perhaps we shouldn't be cynical. Instead, maybe we should just marvel at the > velocity of Silicon Valley in all its absurd glory, and at a 10-year-old who > has raised millions for two separate businesses and may also help change the > way we look at charity.

I missed the part where a 10-year old raised millions of dollars. The previous NYT story[1] by the very same author presented a slightly different narrative of the company less than a year ago:

> Vivienne's success was spurred by a heart-rending cause, a cute face and a > good tagline in the form of "make a stand." But she would most likely have > just been another lemonade stand if not for her father, a social media > expert. Eric Harr was president at the time of Resonate Social, and his > clients included CBS News and Lexus, among others. He led a media-savvy > Twitter campaign that attracted national attention for Vivienne's cause.

> What makes this feel-good story really interesting is what happened next. > Instead of moving on, or even forming a nonprofit to continue those goals, > Mr. Harr and his wife, as well as Vivienne, formed a business around this > cause.

> _Mr. Harr raised $982,000 in financing and incorporated Make a Stand._ He > quit his job and is now the chief executive. Make a Stand sells fair-trade, > organic lemonade.

If the author wanted to make a point about "the velocity of Silicon Valley in all its absurd glory," I think he could have found plenty of better examples.

[1] [http://dealbook.nytimes.com/2013/11/12/in-a-lemonade- stand-a...](http://dealbook.nytimes.com/2013/11/12/in-a-lemonade-stand-a- transformation-of-the-corporation/)

</comment><comment><USER4> I am really happy for the success here, and it does reflect the Silicon Valley narrative that anyone can make it big. But I am never sure if stories like this help or hurt. The cynic in me sees a PR guy who exploited his own daughter to create a viral PR campaign, the optimist in me sees it as validation that shooting for a large goal is never "stupid" and if your chance of success is equal for what ever goal you aim for then "go big" as they say.

I would be both sad and pretty impressed if the lemonade stand idea was just a pre-planned launch vehicle for the app.

<comment><USER5> I agree with most of what you said, but I don't think the narrative here is that _anyone_ can make it big... it's that if you have connections in Silicon Valley, it's fairly easy to raise money.

This shouldn't diminish the creativity and good-heartedness of the 10-year old, but if her dad were a fast food worker, I don't think we would be reading about her in the Times.

</comment></comment><comment><USER6> I like how instead of sugar they list "Evaporated Cane Juice" as one of their ingredients, it's one of several hundred legal names for sugar. Given that sugar is probably one of the leading causes in child obesity, together with them being a for profit company, I'm not entirely sure why you would not give money to charity directly.

</comment><comment><USER7> Not to sound jaded, but surely if this had been a non-white 10 year old girl from a disadvantaged background it would have been something to make me warm and fuzzy inside. Instead, the cynic in me wonders how the Dad pulled this off ...</comment>


Making Ruby Faster - <AUTHOR> http://omniref.com/blog/blog/2014/11/12/making-ruby-faster/ <comment><USER2> Though optimizations in an interpreter are valiant efforts, the way to optimize the language is to develop a compiler.

There are good reasons not to start doing hairy optimizations in the interpreter, like that it establishes the semantics which is helpful when compiled and interpreted semantics differ, and that interpreter optimizations will become moot once you have a compiler.

About this Ruby optimization: one thing that stands out is that there doesn't appear to be any way to turn it off. If such a hard-coded interpreter optimization breaks, the only way to try something without the optimization is to revert to a build of the interpreter which didn't have it. That may not be possible, so then you may have to build the current interpreter, but with that change reverted.

Compilers usually have switches for selecting various optimizations. Of course, a similar switch in an interpreter has a run-time impact: a "do this optimization" flag has to be checked each time there is an opportunity to do that optimization.

<comment><USER3> Mike Pall, the writer of the LuaJIT interpreter/compiler, suggests that a good interpreter can get a large portion of the gains you'd get from a compiler. At one point the LuaJIT interpreter (not the regular Lua interpreter) was within about a factor 2 of the JIT. I think the JIT has since improved, but you can still get significant benefits from simply improving the interpreter. (I don't have a reference for this and can't look it up now, so maybe someone else can help me on this... I do, however, remember reading something by Mike Pall that said this. I think it was on Lambda The Ultimate.)

Of course, the best thing to do is to optimize the interpreter and then JIT compile the CPU intensive stuff.

<comment><USER4> "LuaJIT's interpreter (!) beats V8's JIT compiler in 6 out of 8 benchmarks and is not too far off in another one"

[http://lambda-the-ultimate.org/node/3851?a=1#comment-57761](http://lambda- the-ultimate.org/node/3851?a=1#comment-57761)

<comment><USER5> This was back in 2010 when V8 did not really have an optimizing compiler - V8's "compiler" was a baseline one essentially gluing together individual interpretation patterns.

Also any cross-language comparison should be done very accurately - because we are talking about different language semantics and different benchmark implementations.

<comment><USER4> well, the point wasn't "an interpreter is always faster than a jit", but "a good interpreter can get a large portion of the gains you'd get from a compiler".

If you prefer apples to apples, quoting Mike Pall again[0]

"the LJ1 JIT compiler is not much faster than the LJ2 interpreter, sometimes it's worse".

[0]: [http://lambda-the-ultimate.org/node/3851#comment-57646](http://lambda- the-ultimate.org/node/3851#comment-57646)

<comment><USER2> If improvements in A gives you gains, whereas the use of some other B also yields more gains, then you can always say that any of the A gains are "a portion of" the B gains.

A compiler that only beats interpretation by 2:1 is either a poor compiler or something else is going on, like most of the work actually being done by subroutines that cannot be whose performance is not being affected by the compilation (Because, for instance, they are written in C and intrinsic in the language run-time).

There do not have to be explicit calls to such functions. For instance, compiled arithmetic that is heavy on large bignums will probably not be much faster than its interpreted version, because cycles are actually spent in processing the arrays of bignum digits (or "limbs"), which is done in some bignum library code. The code being compiled looks innocuous; it just has formulas like (a+b)*c, but these turn into bignum library calls. Since the bignum library is written in C and compiled, the calls run equally fast whether called by interpreted or compiled code. That's where most of the time is spent, and so compiling the interpreted code makes no difference overall, even if 90% or more of the time spent there is knocked out by the compiler. (Amdahl's Law.)

</comment></comment></comment></comment></comment></comment><comment><USER6> Really neat article, though it makes me wonder why they didn't just remove `sym_equal` entirely and replace all usages of it with `rb_obj_equal`. At the very least, that `#define` needs a comment saying it _must_ have the same _identity_ as `rb_obj_equal` or a perf loss will happen.

<comment><AUTHOR> Well, among other things, you can override the object equality check in Ruby -- so you can't simply rely on pointer identity as a check of equality.

That said, yeah, it'd be nice if you could just make the assumption that if two objects point to the same memory, they're _de facto_ identical...

<comment><USER7> You can make that assumption for symbols. And that is in fact what the code was doing -- both before and after optimization. The optimization was about something else, weirder, that was still making string comparison (where you can't just check the pointer) faster even though it ought to be slower. Did you read the article?

<comment><AUTHOR> _" The optimization was about something else, weirder, that was still making string comparison (where you can't just check the pointer) faster even though it ought to be slower. Did you read the article?"_

I'm the author of the article.

The optimization here is that the check for plain-old symbol equality is happening without the need for a full ruby method dispatch. You can't make that assumption in the general case, because it's possible to override equality in Ruby, which then requires more work.

If you look at the full source code for the method in question, you'll see that it does special checks for Fixnums and Floats and Strings, then a check for the _default_ object equality (i.e. does the comparison use rb_obj_equal?), then, finally, it falls back to a full method call.

</comment></comment></comment></comment><comment><USER8> Every tiny little thing like this that gets further optimized in the MRI will result in major performance gains in advanced frameworks/codebases down the road. So this is great news. I'm looking forward to a near-future time when the claim Ruby=Slow! is much harder to make.

<comment><USER9> There is an inherent overhead to all dynamically typed languages like Ruby and Python, method dispatch. Overcoming this problem is not easy and even JRuby with all the muscle of the JVM JIT is still pretty slow compared to the statically typed equivalent in Java or any other language that doesn't have to pay for method look-ups during run-time.

The situation is not hopeless though and projects like Truffle/Graal ([https://wiki.openjdk.java.net/display/Graal/Truffle+FAQ+and+...](https://wiki.openjdk.java.net/display/Graal/Truffle+FAQ+and+Guidelines)) are pushing the boundary of what is possible in terms of performance for dynamically typed languages. There is also PyPy and RPython ([http://tratt.net/laurie/blog/entries/fast_enough_vms_in_fast...](http://tratt.net/laurie/blog/entries/fast_enough_vms_in_fast_enough_time)) which again leverages some neat JIT techniques to make things fast.

<comment><USER10> > _There is an inherent overhead to all dynamically typed languages like Ruby > and Python, method dispatch_

I can't claim to fully understand how they pull it off (not being that familiar with compiler internals), but I thought Julia didn't suffer from this problem?

<comment><USER11> Julia is really designed to _feel_ dynamic while minimizing the run-time dynamicity the compiler must account for. Type inference and method specialization play a big role, and you can read the Julia papers (on julialang.org) for a discussion of many of the design choices.

Many modern JIT compilers use multiple techniques for aggressive specialization of code sections that meet optimization heuristics (whether tracing-based or otherwise), thus carefully written JavaScript (under V8 and others), Lua (under LuaJIT) and Python (under PyPy and others) can be quite fast. On these platforms there are usually implicit or explicit language subsets and coding styles required to get maximum performance out of the compiler (as with Julia: it is possible to write slow code in any language). For example, ASM.js is an optimization-friendly, explicit subset of JavaScript.

</comment></comment></comment></comment><comment><USER12> Great article! What I don't understand is why can't they make the compiler inline the function instead inlining manually?

<comment><AUTHOR> This is more than just C function inlining -- the Ruby interpreter, when it does a method call, ends up doing a lot of expensive bookkeeping at runtime to maintain its own internal call stack.

This optimization allows the interpreter to completely bypass a _Ruby_ method call, which is a big win.

<comment><USER12> I meant having something like:

if (check_cfunc(ci->me, rb_obj_equal)) { return rb_obj_equal(recv, obj); }

and trusting the compiler to inline rb_obj_equal (or using inline), although I reckon you don't probably want rb_obj_equal to always be inlined.

<comment><AUTHOR> Oh, sorry...wasn't clear.

The problem with just doing the rb_obj_equal call for everything is that if people override eql? in their Ruby code, you need to call that overridden method, instead.

The consequences of this decision mean that the comparison operator needs to be more complex.

</comment></comment></comment></comment><comment><USER13> My impression was that ruby symbols were defined once and mapped to the same memory space. If I am correct in my assumption, wouldn't it be more efficient to pass the arguments in as pointers and compare the equality of the pointers?

<comment><USER14> That's actually what they're doing. VALUE is a typedef for uintptr_t, so rb_obj_equal is just testing whether the pointers are the same.

<comment><USER13> Thanks for looking into that, Matt. It has been a long time since I did any real C programming, and I could not believe that they would be passing by value for this kind of equality check. The word "VALUE" is a little deceiving considering that it is actually a uintptr_t.

<comment><USER15> It is uintptr_t in size, but it's actually a bit more complicated than that. If the 'value' is a fixnum, the low bit is set to 1 and the bottom 31 or 63 bits of the integer are shifted to the left and stored directly in the VALUE [1].

And then there's a few other bit patterns (all with the low bit set to zero) that also mean embedded values [2], including symbols, where they're actually an index into a string table rather than an actual object pointer.

So a lot of the time, VALUE is anything but a misnomer. Also, the name for this pattern is tagged pointer. It's one of the most notable things ruby borrowed from emacs lisp [3].

Also, the entire point of symbols is that they don't need to be dereferenced (or strcmp'd) to compare them. That's not the slow part of symbol comparison.

[1] [https://github.com/ruby/ruby/blob/trunk/include/ruby/ruby.h#...](https://github.com/ruby/ruby/blob/trunk/include/ruby/ruby.h#L234)

[2] [https://github.com/ruby/ruby/blob/trunk/include/ruby/ruby.h#...](https://github.com/ruby/ruby/blob/trunk/include/ruby/ruby.h#L383)

[3] [https://www.gnu.org/software/emacs/manual/html_node/elisp/Ob...](https://www.gnu.org/software/emacs/manual/html_node/elisp/Object- Internals.html)

</comment></comment></comment></comment><comment><USER16> Almost offtopic because not directly related to symbols performances in Ruby but, coincidence, I was reading a 2011 post from Rubinius site [http://rubini.us/2011/02/17/rubinius-what-s- next/](http://rubini.us/2011/02/17/rubinius-what-s-next/) a couple of minutes before seeing this on HN.

At almost 50% of the post there is a code snippet that explains why Ruby method calls must be slower than the ones of statically typed languages. It also explains how Rubinius was addressing that 3 years ago.

Hopefully they'll optimize that in all language implementations.

<comment><USER17> also almost off topic but the lead Rubinius dev just posted a great writeup on rubinius 3.0 which could be a possible future of ruby in general.

[http://rubini.us/2014/11/12/rubinius-3-0-part-3-the- instruct...](http://rubini.us/2014/11/12/rubinius-3-0-part-3-the- instructions/)

<comment><USER16> Interesting read. Thank you.

</comment></comment></comment><comment><USER18> Makes me wonder why the C compiler (gcc?) isn't clever enough here and is not inlining all that non-sense. At least I would expect SufficientlySmartCompiler™ to do so. Doing the inline by hand just proves how dark is the age we're living in.

<comment><USER19> > Makes me wonder why the C compiler (gcc?) isn't clever enough here and is > not inlining all that non-sense.

There's an indirection through a function pointer (ci->me). The manual optimisation is there to see whether the function pointer matches a baseline pointer, and apply that baseline directly instead of invoking the "generic" dispatch machinery (which involves setting new callframes & al)

If you look at the whole function, there's a few special case before that which statically dispatch the case of a comparison between numbers or strings, so here we're in the "general" case and one last optimisation available is to see whether equality has been overridden at all.

<comment><USER20> People are often confused about how a JIT can be faster than a static compiler - this is a great example of why that can be the case. A dynamic compiler would be able to speculatively inline through the function pointer, where in a static compiler that is not tractable with what we currently know about compilers.

<comment><USER21> That's not really true - it's just (possibly partial) defunctionalisation. The problem isn't that we don't know how to do it, but that the necessary whole program architecture has various drawbacks.

See Stalin and MLton for examples of a static compiler performing such analyses.

<comment><USER20> Consider the case of a program which applies a processing function to pixels in an image. Which processing function to run depends a command line parameter. How would whole program analysis help you know which function you are going to use? But a JIT will see you keep calling the same function and inline it. Not even profile directed feedback will help you if each time you run the program you use a different function.

I know Stalin and MLton but not the research you mention - can you point me at any papers?

<comment><USER21> It's true that whole program compilation doesn't cover speculation (and many other cases of dynamicism, like running code that you download or construct at runtime). But it does allow inlining through a function pointer as in the OP, which you suggested is impossible for a static compiler.

The classic paper on defunctionalisation is Reynolds' "Definitional Interpreters for Higher-Order Programming Languages". There's also a huge whack of papers at [http://mlton.org/References](http://mlton.org/References), some of which go into MLton's compilation strategy (I don't remember which ones to point you at, though).

</comment></comment></comment></comment></comment></comment><comment><USER22> "Symbols are this unique, quasi-string construct" \- not even a little bit unique. Interned atoms were a core feature in the very first Lisp interpreters, and the idea has been copied in many languages since.</comment>


Apple Takes Aim at Wireless Phone Companies - <AUTHOR> http://www.wsj.com/articles/apple-takes-aim-at-wireless-phone-companies-1441845365 <comment><USER2>
      Apple Inc. launched a broadside Wednesday against wireless phone companies, saying it will for the first time finance iPhone sales directly to customers without requiring them to be tied to any particular carrier.

__In the US. This is pretty commonplace in other countries.</comment>


Bill Hewlett & Dave Packard (HP) - Early Years - <AUTHOR> http://www.hp.com/retiree/history/founders/bdinterview.html <comment><AUTHOR> We all start somewhere: "The first products weren't very romantic, I'll tell you. There was a shocking machine to enable you to lose weight; a clock drive for a telescope and a magic eye to turn on a urinal at Stanford."</comment>


Ask HN: Snapchat for documents? - <AUTHOR> FD: this is part tongue in cheek, part market research.
The other day, I had to hire someone to do some writeups for me. They generously provided me final samples on the subject under discussion. It got me thinking that I could have taken their samples, told them I hated their work, edited it a little, and passed it off as my own.
That's when the thought came to me that maybe there's a market for documents which disappear after the first viewing from the receiver's device - a Snapchat for documents.
Use cases:
1. Play memory games or tests
2. If you want to send a VC your pitch deck but you don't want them to forward it to a company in their portfolio.
3. You may want to share some medical records with a remote friend or family but not let it linger on their device.
4. Share a treasure map with a fellow adventurer to convince them that you're legit and X does mark the spot.
5. Share a screenplay with Harvey Weinstein remotely because you don't want to have sex with him (sorry, this is a topical reference in case you're not in the United States right now.)
6. Share a sneak peek of financial data to reporters do that they can write glowing reports about your business acumen
7. Prove to Glenn Greenwald that you actually have real NSA documents
What does HN think? Should I drop everything, do this full time, and go from 0 to distinctly non-Thielian 0.05? <comment><USER2> The Verge: "Mozilla's Send is basically the Snapchat of file sharing" [1]

Engadget: "Mozilla file sharing test wipes files after one download" [2]

Firefox Send [3]; about page [4]

[1] [https://www.theverge.com/2017/8/2/16086272/mozilla-send- file...](https://www.theverge.com/2017/8/2/16086272/mozilla-send-file-sharing- service-launches)

[2] [https://www.engadget.com/2017/08/02/mozilla-send-file- sharin...](https://www.engadget.com/2017/08/02/mozilla-send-file-sharing/)

[3] [https://send.firefox.com/](https://send.firefox.com/)

[4] [https://testpilot.firefox.com/experiments/send](https://testpilot.firefox.com/experiments/send)

<comment><AUTHOR> Send is ortho to what I had in mind. Downloading the file expires the link ( _oh, this is what the other commenter was saying_ ) but leaves a copy with the receiver.

</comment></comment><comment><USER3> What's your threat model?

You can't counter someone who wants to store the document -- just take a video of the device.

So what you _can_ do is prevent _accidental_ saving, and keep honest people honest. For this, an expiring link will suffice for text, and other formats can be supported using e.g. data URIs (content isn't cached on-disk AFAIK, unless paged out), serving PDFs as images, etc.

<comment><AUTHOR> If they take a screenshot or video, maybe I can report the action back to sender notifying them that the receiver is not trustworthy. I'm told Snapchat does this for screenshots.

I'll look up expiring links but do they need people to upload content to a server first before generating an expiring link?

Threat model - none as such. For a person who makes a living writing blogs for others, their threat model is plagiarism. For a startup sharing trade secrets with a VC, the model is violation of NDA and so on.

E1: never mind about expiring links. I figured out what they are from the other comment. You mean Send, right?</comment></comment>


Ask HN: Hackers, what activity in your craft do you struggle with the most? - <AUTHOR> <comment><USER2> Invoicing. :)</comment>


Ask: Has anyone sold software to the conferencing industry. Advice? - <AUTHOR> I've got an idea and a prototype that solves something very basic in how conferences are being conducted today. To the best of my knowledge it's novel and relies on some of my university research.
I'm looking for advice from other people who tried selling to conference organizers and content creator. Can anyone please share his insights ?
Thank you <comment><USER2> I have. It's not our main go-to-market segment, but a few months ago we saw a use case so gave it a try. My takeaway:

1\. Size matters

The bigger the conference, the more complex the sale cycle. There are a billion moving pieces, and people get progressively more stressed out closer to the conference, because everything has to be executed and be perfect on a small number of days. If you show up during the planning stage too early, they don't know what technology to use yet, so you have to wait till the right time to show up, when they have the topics, speakers more confirmed. Be very aware of where they are in the planning cycle, because budget opens up or not depending on the time.

2\. Degree of tech savviness/budget

Every conference has a different degree of savviness towards what tech platform they are comfortable with. There is not really a test run they can do at this scale - so you need to make them feel very confident that the tech will work live for everyone at the same time since there is no gradual scaling up.

3\. Pre-/post-conference engagement is a common pain point

The pitch that really got our product sold was to emphasize the continuous nature of engaging with the conference audience beyond those 2-3 days of the conference. Not sure what your product does (mine is an idea sharing platform: agora.co), but that pain point resonates with everyone I've talked to who organizes conferences

Hope this helps!

<comment><AUTHOR> Thanks so much for your feedback! Is there any chance you'd be willing to chat some more via email?</comment></comment>


The Case for Making Cities Out of Wood - <AUTHOR> http://nautil.us/blog/-the-case-for-making-cities-out-of-wood <comment><USER3> For the people saying "fire!"...

Wood went out of fashion because of urban fires, resource (natural forest) depletion and long term maintenance (rot, termites..) issues.

Modern engineered timber (according to proponents) solves these problems. It's engineered from renewable crops of fast growing timber, is resistant to fire and pests... Proponents claim it is now suitable for skyscrapers but certainly for 5-15 story urban residential buildings.

Imo.. what is missing are clear advantages, a reason to bother. I don't think there's much cost advantage at this point. Weight savings.. maybe there are some applications where this is important. Generally, it's a bit of a solution searching for a problem.

<comment><USER4> > Imo.. what is missing are clear advantages, a reason to bother.

There are quite a few actual advantages. Speed of construction is one. The ability to prefabricate large elements (like entire walls) off site is another. In some areas of the world there's a lot of cheap excess timber after some kind of pest (I'm thinking a beetle?) killed entire forests. It insulates really well out of the box, especially when it comes to noise insulation. Wooden buildings are more earthquake resistant than stone/concrete.

There's also quite a number of disadvantages with concrete. Lack of sand. Implication climate change. Requires rebar reinforcements which ups the price and turns the whole thing into a giant radiator.

CLT is a pretty awesome building material, really.

<comment><USER5> > In some areas of the world there's a lot of cheap excess timber after some > kind of pest (I'm thinking a beetle?) killed entire forests.

Dead wood isn't even useful as firewood. You can't just pick dead trees up off the forest floor and saw them up into lumber. Even if you could, no government would let you transport that timber out of the immediate vicinity in which it was found, due to the aforementioned pest.

Perhaps there is a surplus of cheap excess timber in some areas of the world, but there isn't much chance of that having anything to do with any kind of pest.

<comment><USER6> "Dead wood isn't even useful as firewood"

Sure it is. You mean degraded, rotten dead wood .. but "fresh" dead wood is firewood.

<comment><USER5> That's a fair distinction to make.

When a tree is killed by a pest such as the emerald ash borer, it dies because the boreholes allow fungus and bacteria into the core of the tree. By the time the tree is visibly dead, very little of the wood is 'fresh'. It cannot be used as lumber, or even firewood.

</comment></comment></comment></comment></comment><comment><USER7> > A recent advance in wood technology should interest the neighborhood's > developers: Teng Li, a University of Maryland mechanical engineer, created > with his colleagues wood that's as "strong as steel, but six times lighter," > he said. Liangbing Hu, Li's co-author on the study, added, "This kind of > wood could be used in cars, airplanes, buildings—any application where steel > is used." Making it is just a two-step process. The scientists first boiled > natural wood in a mixture of sodium hydroxide and sodium sulfite, to remove > some of the lignin and hemicellulose, substances contained in the walls of > wood cells (the former retard parasite and bacterial attacks, the latter > cover and bind fibers). Then they put the wood in a hot press, which leads, > as they say in the paper, "to the total collapse of cell walls and the > complete densification of the natural wood with highly aligned cellulose > nanofibres." The result, they conclude, is a "low-cost, high-performance, > lightweight alternative" to "most structural metals and alloys."

If this decreases the burn rate, as other commenters have pointed out, and the input energy is manageable, then this has a chance. Cool!

<comment><USER8> The obvious question, to me, is whether this process can be used to produce a uniform enough product to be highly reliable.

</comment></comment><comment><USER9> > Teng Li, a University of Maryland mechanical engineer, created with his > colleagues wood that's as "strong as steel, but six times lighter," he said

Phrases like this make me uneasy. "Strength", especially when used informally like this, is quite ambiguous (e.g. there's a reason we don't make buildings out of spider silk).

Overall it's quite an uplifting piece though, and I would certainly like to see such a revival.

</comment><comment><USER10> Even if the technology is perfected and proven superior on several counts, the adoption has to overcome the psychological barrier. The places that don't have a culture of wooden buildings, especially the floor, will need some convincing.

As an Indian, I don't encounter wooden floor often. Modern buildings are all brick and reinforced concrete, and old temples are stone mostly. Any wooden floor one might come across are just wood panels installed on concrete floor. Nearly two decades back, the city library (Seshadri library, Bengaluru) was renovated, and as a part of it the shelves were raised and a wooden corridor was installed to enable access to higher shelves; its a tall building with a dome and a large hall under it, your typical library. Needless to say, I was quite apprehensive to walk on it, so were most people there. Apart from that, the only experience I have is standing on my desk to change the bulb. The desk is quite sturdy - the bulkier carpenter stood on it to demonstrate - but I just can't trust it the same way I trust concrete floor. When on a wooden surface, I step softly, hoping to make myself lighter, just in case, though I know its nonsense.

<comment> crooked-v With the mention of temples, it's actually pretty common for historical temples, churches, and castles to have wooden rooms for anything past the ground floor, since it was much, much easier to build a few main structural supports out of stone and then fill in the rest with wood later.

Of course, I'm a little biased on the subject, living in a 100-year-old all- wooden building (you can see the huge beams resting on the foundation in the basement) that I chose for earthquake resistance. I'm actually a lot more comfortable knowing that the whole building can sway while all the parts stay attached, compared to the many old brick buildings around here that will literally fall apart if an earthquake happens.

</comment></comment><comment><USER11> There are actually plans to build a 350 meter (approx. 1050 foot) skyscraper in Japan. [https://www.dezeen.com/2018/02/19/sumitomo- forestry-w350-wor...](https://www.dezeen.com/2018/02/19/sumitomo- forestry-w350-worlds-tallest-wooden-skyscraper-conceptual-architecture-tokyo- japan/)

For those interested in more "concrete" expressions of the existing capabilities of timber based construction an 18 story dormitory was assembled in 70 days at the University of British Columbia.

[https://news.ubc.ca/2016/09/15/structure-of-ubcs-tall- wood-b...](https://news.ubc.ca/2016/09/15/structure-of-ubcs-tall-wood- building-now-complete/)

Here's a time-lapse: [https://www.youtube.com/watch?v=GHtdnY_gnmE](https://www.youtube.com/watch?v=GHtdnY_gnmE)

</comment><comment><USER12> If you can extrude or shape the densified wood, into something "branch-like" but at steel like strength then you open up new building opportunities - <USER2> cities are dominated by straight lines, for good reasons, but branchlike handrails, footpaths and arches open up a lot of possibilities for good architects to chnage the look of a city beyond the mere material it is made of

<comment><USER13> There is a compression step in wood preparation life cycle. You could replace this step with shaped moulds to create these features. Or maybe it's cheaper and easier to 3D route out of bigger masses.

<comment><USER12> just wondering how much pressure it takes to compress wood to destroy the cellular structure. One might suspect more than enough to crack a mould that had lovely curvy shapes in it ...

</comment></comment></comment><comment><USER14> The question I have about all of this is the environmental impact of the "densification of wood." They cite it being similar to paper manufacturing, which is really energy intensive and is a horribly polluting industry.

I don't have any info on the above, but it is something I wonder about.

</comment><comment><USER15> First of all, what they are talking about is more like paper made out of wood since the fibers are treated extensively and then formed. Secondly, large and spreading structure fires which have such a devastating history have been essentially eliminated by use of sprinkler systems.

</comment><comment><USER16> I'm day dreaming about 'aktivhaus' (sp?) style residential in the desert.

What would that look like?

My starting notion is a three level structure. Bottom is carport, patio, storage. Middle would be kitchen, baths, common areas, study. Upper would be bedroom(s). Maybe a roof top deck.

South wall would have horizontal solar louvres. Kinda like the Burr library in downtown Phoenix.

Roof top solar something. But I'd still want to be able to look up at the stars.

Grey water system of some sort. So the ground level would have a cistern of some sort.

Is wood a viable option for the desert? I know zilch about thermal loads, insulation, etc. If so, how much wood?

</comment><comment><USER17> Three out of three top comments here are about fires - an issue the article specifically talks about.

How about reading the whole piece instead of just a headline?

<comment><USER18> > He wants to do many more experiments because it's still not clear how, in > mass timber buildings, to get compartment fires to reliably burn out on > their own, a "cornerstone of fire safety engineering design," he writes.

In this context, the article's later comparison of this wood to concrete seems exaggerated.

</comment></comment><comment><USER19> Some cities were wood, and they burned. My concrete condo is in the burn path of the 'great Ottawa fire'. Wikipedia doesn't have enough pictures, worth googling.

[https://en.wikipedia.org/wiki/1900_Hull–Ottawa_fire](https://en.wikipedia.org/wiki/1900_Hull–Ottawa_fire)

<comment><USER20> I'm wondering if 'total collapse of cell walls and the complete densification of the natural wood with highly aligned cellulose nanofibres.' means that stuff isn't going to burn until you get temperatures where steel melts anyway?

<comment><USER21> It would seem so. from the article:

> Massive wood walls and structural beams and columns comprised of engineered > panels have demonstrated fire performance equal to concrete and, in some > cases, superior to steel

<comment><USER22> one big difference seems to be that once the critical point is reached, even if the threshold very high, the wood contributes to the fire and nourishes it, unlike concrete or steal. a skyscraper with proper sprinkling should be fine.

</comment></comment></comment></comment><comment><USER23> Emperor Nero likes this element!

</comment><comment><USER24> The case against:

[https://en.wikipedia.org/wiki/List_of_town_and_city_fires](https://en.wikipedia.org/wiki/List_of_town_and_city_fires)

<comment><USER18> I think of Chicago first. The wood city that burned and led to the invention of 'skyscrapers'.

<comment><USER25> The focus of this article is innovation in this space.

What happened in Ottawa or Chicago or Tokyo is relevant in a historical sense but this is about recent innovations that make wood viable (both from a safety/fire-resistant perspective and economical).

<comment><USER26> I think we all know this, but this article was less-than-convincing and nothing has been deployed at scale yet.</comment></comment></comment></comment>


Ban kids from loot box gambling in games - <AUTHOR> https://www.bbc.co.uk/news/technology-49661870 <comment><USER2> Myself and my son play Apex legends. Its an online multiplayer game thats free, but you can optionally pay to unlock cosmetic items like character outfits (skins) etc.

He came into some cash recently courtesy of the tooth fairy and asked if we could buy a skin for his favorite character. I said ok. However after id purchased some in game coins we realised that we couldn't actually buy the skin he wanted, instead we had to buy 10 boxes with random contents that could potentially contain a skin similar to the one he wanted.

Watching his excitement opening up the boxes and his eventual disappointment at not receiving the one he wanted - plus subsequent enthusiasm to buy more coins courtesy of some lesser items granted, I realised Id made a horrible mistake. Id basically introduced a virtual pub gambling machine to a young kid. This sort of stuff is horrible.

<comment><USER3> No, you did good! He needs to learn how to handle this and you're right there guiding him.

I have the same situation with my six-year old son and Rocket League loot boxes. He wants to spend all his limited money on them, I think he's wasting it, especially since I see the disappointment when he doesn't get the things he want, but that's a learning experience. It's worse when he once in a while gets a cool skin, because in his eyes it makes it all worth it.

I see the money I give him as teaching opportunities. Kids will get in touch with these mechanics as they grow up, and now you have the chance to talk to him about it. Discuss it over and over, it's not a one-time thing, and you've made no permanent damage. Let him know you think it's not worth it, but I wouldn't put a permanent ban on it, as it may make it even more appealing. If he wants other (real-life) stuff later, remind him that he already spent his money on loot boxes and I think they will lose their appeal a bit.

<comment><USER4> I mean when I was a kid you'd get this sticker album for your favourite thing(be it football players, star wars, whatever) and I'd always beg mum to get me yet another sticker pack so I could complete my collection. There were always stickers that I really really wanted and yeah, the disappointment of going through a few packs and not getting what you wanted was very real.

I think ultimately, this is the same thing - just digitized. I don't really have an opinion whether that's good or bad, just that it's clearly aimed at kids to buy this stuff, just like the stickers were.

<comment><USER5> I don't really think "just digitized" captures the problem with these boxes.

Imagine a fairly boring interface that has Pokemon cards or football stickers in. Like your hands holding them and trading them and sticking them on things.

Now contrast that to the loot box stuff that has exciting music, flashing lights, A-B tested into oblivion, the money comes from some ethereal 'account' rather than involving an actual exchange, etc.

I think the analogy is more with the flashing exciting slot machines at the pub (which seem to have evolved a ton since I were a small as well...)

<comment><USER6> Maybe just a little bit of a way to remove the dopamine high, or make it slightly worse, would be to have the kid physically hand you the money before they open the case so they feel the pain of spending the cash.

<comment><USER7> Which surely only works for older kids who've had the experience of earning money with hard graft.

<comment><USER8> Well, you can do it the good ol' way with ceramic piggy banks that do not open but need to be crashed with a hammer.

Anecdata, I had one in the shape of a dinosaur, must have ben 5 or 6 and I still remember (some 50 years later) the day I decided that I _needed_ a new toy the doubts about actually breaking it (with the assistance of my dad) and perfectly remmber the dinosaur, whilst I cannot remember at all which toy I was willing to get, probably a toy gun, but I am not sure.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Years ago, when I was about 12 years old, I was addicted to RuneScape. Every evening after school, you'd find me cutting down trees, cooking, or venturing into the PvP zone for some awesome gear. One day, someone retired from the game by killing their character, which resulted in all of their items being dropped. I lucked out and snagged more gold than I could have ever imaged. I remember running around the house in joy.

In RuneScape at the time, there was another PvP zone where you could fight another player and bet gold on whether you would win. Now having "expendable gold" and false confidence, I dropped some big money on this PvP zone, and over the course of a day, I lost it all. I was devastated. I've never lost a ton of money in real life, but this left a really sick feeling in my stomach even in the digital world.

Reflecting on this experience, I feel it has actually benefited me. I've experienced the pain and risk that gambling can bring, and have never felt a need to do this with my actual money. To me, games can be a sandbox to learn life lessons without major consequences.

<comment><USER10> I know right? Runescape back in the day was the perfect sandbox to learn these lessons. I remember lending out my expensive sword to an online "friend" who promptly logged off and blocked me. Lesson learned.

Nowadays all these sorts of transactions have been shifted into auction house- like marketplaces to prevent abuse. I think taking out this human interaction component does more harm than good, especially bundled with the new ability to (legitimately) buy game money for real cash. The adversary moved from other players taking your ingame stuff, to the game's maintainer itself taking real world money.

</comment></comment><comment><USER11> If we ban loot boxes in video games, why dont we ban Magic/Pokemon card boosters that you can buy from physical shops?

As it's written in the article, problems arise for a _minority_ of children. From the article, we know little about the background of these children and about their parents. It is possible that those children would have developed an addiction to something else if it wasn't video games loot boxes. Yes, some of them spend thousands, but what if they are millionaires's kids? They play by different rules.

In my opinion, gambling in videos game means your kids will experience the risk of gambling sooner, and if you watch your kid and educate them about it, they can experience it in a safer environment than when they are adults.

To me, banning virtual loot boxes is extreme and doesynt solve the actual problem (education programs are misaligned, lack of mental healthcare programs, etc). Addiction might reveal a problem, but it's not necessary the root cause.

<comment><USER12> Because magic the gathering cards are an actual item tradeable for actual money to other players and resellers. It's still questionable in many ways, sure.

But many of these virtual items are closed economies with the supply entirely owned by the producer of the game. These have no intrinsic value outside of this closed system and there is no ability to exchange them for real money.

I'm not saying booster packs are necessarily morally correct either, but want to highlight that there is a qualitative difference between them and most loot box economies.

<comment><USER13> So the reason Magic is different is because you are actually gambling for things with monetary value? That doesn't sound right.

I'd think it'd be less like gambling if the rewards had no monetary value, like random candies or skins in a video game. Then even the hope of getting your money back isn't there. You know all you're getting is just candy or toys.

<comment><USER14> The reason Magic is different is for 2 major reasons:

1) You can sell your cards and get money from them (could be less, could be more) and they have some tangible value to other people.

2) You don't have to acquire magic cards through booster packs (aka loot boxes) only. If you want a particular card then you can go to the store and buy it. This was the major concern from the parent in the top comment of this post, that you couldn't just buy the skin directly but had to gamble for it.

Additionally if you just want to play with your friends and experiment there's no reason you can't just use proxy cards or fakes and have fun playing a deck. Though that's not for tournaments or anything serious.

<comment><USER15> >1) You can sell your cards and get money from them (could be less, could be more) and they have some tangible value to other people.

Shouldn't this make it a bigger problem, not a smaller one?

>2) You don't have to acquire magic cards through booster packs (aka loot boxes) only. If you want a particular card then you can go to the store and buy it. This was the major concern from the parent in the top comment of this post, that you couldn't just buy the skin directly but had to gamble for it.

I wonder if the skins were priced per their rarity values, would people still be okay with it. Some mtg cards costs $1,000s. I wonder what people would say if some game added loot boxes containing rare items that were worth similar that players could then trade for money. My guess is people would respond far more negative to this.

<comment><USER14> To be able to have point #2 you have to have point #1. Someone has to take the risk to open the booster packs and get those cards out onto the market. Sometimes business oriented people do that, other times a group of friends buy a booster box to play with at the time. At least in these circumstances the people opening the packs know what could happen.

I think if you could buy all of the items that were included in these loot boxes then it wouldn't be as bad. You want skin X, just go ahead and buy it. However there would still be a problem as people might pay way too much trying to get that expensive item in a loot box than just paying for it.

<comment><USER16> > To be able to have point #2 you have to have point #1.

Well, no. You can require (on pain of jail time) that the producer provide all N possible skins for individual sale at prices that add up to less than or equal[0] the cost of N 1-skin loot boxes.

0: To preempt the obvious "make individual skins so expensive noone can actually buy them" strategy.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> This is a good idea, but they _really_ need to stop all the gambling advertising disguised as kids games on daytime TV. I've observed (UK) that daytime TV commercials mainly consist of Personal Injury Compensation, mail- order-fashion and "games that you can play on your phone, tablet or computer". Always brightly coloured, very animated, and always played by attractive people. Often there's a "social" theme were the participants all get together with their phones and tablets and game, er, gamble a day away together at bingo. Very sad, very cynical and very pervasive. But hey, it brings in _lots_ of tax revenue, so it won't stop anytime soon.

<comment><USER18> I think those adverts are targeted at lonely housewives/husbands and the unemployed rather than children. As you said, they make it seem like these virtual fruit machine/bingo games are very social, when in fact the users are probably sitting on their sofa alone. It's a similar problem though, it's aimed at exploiting a problem (loneliness) and replacing it with another problem which generates a recurring income.

</comment></comment><comment><USER19> Remember when loot boxes promising valuable rookie cards of baseball players captured America's youth and squandered the nation's fortune back in the 20th century?

Or the countless families devastated by beanie baby addiction?

Me neither. Collectibles aren't the problem.

And it isn't gambling if you can't cash out. Why do you think there's so many casino games in the app stores even though digital gambling is illegal? Cuz they aren't gambling - they're hobbies. Thirty years ago you bought a $20 handheld slot device from the department store. Now you download an app.

<comment><USER20> I don't think people are arguing that collectibles are the problem. They're arguing that the gambling is.

In this context, we're defining gambling as exchanging money for a chance at receiving something of value. I think that's a reasonable definition and it certainly fits here.

<comment><USER21> Do Happy Meals constitute gambling then, because they contain one of eight great toys?

<comment><USER22> So this goes like lotteries and several other things we already write laws about. What we care about is the behaviour. If your product triggers the problem behaviour then that's a problem.

If I go to McDonalds and there's a queue of people buying Happy Meals because they want a specific toy, and they either don't actually take the meal or it goes straight in the garbage, that's a huge problem -> gambling.

If I go to McDonalds and every kid just seems to be eating Happy Meals and enjoying whatever crap they got by chance, no problem -> not gambling.

You might argue, well, how can McDonalds control this? There are a bunch of things they can do to avoid causing the problem and thus avoid triggering an investigation. For example when somebody proposes "Ooh, let's make Toy #3 way better than the others, and then also only give it out 0.1% of the time" don't do that. That's going to trigger the problem. Or if a parent comes in and says they really need Toy #6 and they're willing to give you the price of a Happy Meal for that toy, you should say "Yes" and hand them the toy, if you insist they keep buying Happy Meals to have a chance you are encouraging the problem behaviour.

We see this stuff with other industries that trigger problem behaviour, we say "Don't do that" and we tell them things they should avoid to prevent the problem behaviour. Good actors work very hard to avoid a problem. Bad ones work very hard to avoid getting caught. Either way we did our best to protect people.

For example "Direct Sales" companies are told not to allow their "sales partners" or whatever they choose to call them to build up stock, because that's part of a negative behaviour. They're told to make sure those "sales partners" are deriving revenue from actually selling the product, which is ostensibly the point of their business, not from selling the opportunity to also become a partner, which would be a Pyramid Scheme, also negative behaviour. Invariably the people who own (and profit from) these companies insist the problem behaviour isn't what they want, and yet so often they do encourage it, because of course it makes them rich. Similarly with video game gambling.

</comment></comment></comment></comment><comment><USER23> Where does the money come from, that the kids spend? Shouldn't it be the parents concern to limit the spending?

While I despise many of the techniques used in modern games to make kids spend money, I also prefer them learning about these things in games, rather than in the real world (with much more money at stake).

One thing that cost us a lot of money for example are the "Panini collectible cards", that predate the computer era. I don't know if they are a thing in the US. Basically for soccer world cups and other events, you are supposed to collect all the pictures of all the players. You buy packs of 5 with random stickers, and you swap with your friends to fill the sticker book. It costs ridiculous amounts of money (easy to spend 100€ or more, on a book with some pictures). I grudgingly admitted to it, as it is almost a rite of passage in European childhoods and a learning experience to some degree.

<comment><USER24> Aw man, you're bringing back memories of my childhood here: I spent all my pocket money on those. Well, those and the chewing gum that had a "tattoo" in them :)

I'm with you on the "what are the parents doing while this is going on?" camp.

My son, now 8, plays some games on the iPad. He's got a bunch of Lego games and a couple of multiplayer games but he cannot interact with the other players except to fight on the same team: so no chatting or anything like that. In addition, he's been told he's not buying anything in-game and we've locked down the iPad so that he can't... in fact it pops up a message if he clicks anything to do with buying.

We've used the default list of acceptable websites when you lock down the iPad. We may have removed a couple too and added Nickelodeon I think (for the games on it) and a couple of others but nothing like YouTube... that's pure shite imo!

He moans sometimes that his pal has Fortnite and he plays it at his house sometimes but he's not getting it at our house.

In all honesty a Google search and a bit of time is all it takes for parents to protect their kids online these days. No excuse.

<comment><USER25> Reading this I can't help but think that Apple Arcade has to be a huge success with parents - a quality, woory-free gaming environment with fixed, affordable cost.

</comment></comment></comment><comment><USER26> And this is the unsung hero of Apple's new Apple Arcade subscription -- 100 games, no loot boxes, pay to win crap. You can safely pay $4.99 and the entire family can have access to the games without having to worry about this crap or advertising.

It's a win for everyone.

Publishers are reportedly getting paid up front so they don't have to worry about not making their money back on their investments.

Consumers avoid the above mention pitfalls of modern mobile gaming.

Apple is "commoditizing its complements" and making iOS/MacOS/iPadOS/tvOS a more attractive platform for casual gaming.

EDIT: Corrected the price is $4.99 not $5.99.

<comment><USER27> > You can safely pay $5.99

Minor correction: It's $4.99 per month

</comment></comment><comment><USER28> I wonder when someone in power finally recognizes that Magic the Gathering and other CCGs, especially their digital versions, are essentially gambling machines.

<comment><USER29> With collectible card games, one has at least a tangible, transferrable object - meaning if someone wants to sell off their Pokemon/MtG cards, there is a pretty healthy market available. Even if the original manufacturer would go out of business, you would still have the assets.

With DLC gambling (which is what lootboxes really are), however, there are many problems:

1) the device OS manufacturer (Google/iOS) can go out of business, rendering the money one spent on the collectibles worthless

2) the application developer not providing updates for the software to run on new OSes or revoking the software outright, leading to the same result

3) there is no real transferability - at best one can restore their account on a different device, at worst (like in Train Conductor) there is no transferability _at all_. Moving DLCs across platforms (Android <-> iOS <-> PC <-> consoles) is extremely rare. Selling off the collected DLCs is not possible anywhere.

<comment><USER28> I'm not sure if transferrable and sellable rewards make CCGs less of a gambling activity. If anything, obtaining a physical object which can be exchanged for cash, with a potential for profit, is the definition of gambling.

Non-transferrable rewards exploit the same weakness of the human psycology, but offer even less in return.

Both kinds of gambling in games should be regulated. It's not easy to define what constitutes a lootbox, and what kind of randomized output is safe. The industry will probably argue that the lootboxes are actually randomized content, not prizes.. From that point of view they sell a non-transferrable experience (service), not a tangible item (product).

</comment></comment></comment><comment><USER30> Agree that games that advertise loot-boxes should be restricted, given their relatively addictive nature to impressionable children.

Children of younger ages shouldn't be exposed to this dopamine inducing idea similar to that of slot machines.

<comment><USER31> The income from the loot boxes has to be taxed like gambling. It's a slot machine (or FBT in the UK) essentially.

Possible there should be an option to self-define a spending limit (per month, day, week) that cannot be increased immediately.

</comment></comment><comment><USER32> How does a free market self-regulate this problem? What is the competitive advantage of not providing chance items?

<comment><USER23> By providing better games, and parents waking up and closing the money faucet.

<comment><USER33> That's the thing though - games nowadays are ridiculously good. Doesn't mean they're successful, but they're good.

And they don't even HAVE to be good - I mean pubg looks and runs like shit but it was ridiculously popular. Fortnite's popular battle royale mode was more like a weekend project (iirc), but it had a benefit over pubg in that it had a big professional studio behind it that was able to scale its production up enormously once Fortnite took off.

And Apex was developed from scratch (or well, probably based off of a lot of work done for Titanfall) and intent. Another example is Overwatch, which was salvaged from the remains of Blizzard's Project Titan.

Anyway long story short, a lot of these games are really really good. And that's also why they have microtransactions (according to the manufacturers / publishers) - they take a lot longer and cost a lot more to make. They (feel like they) have to earn money from a game for at least one year, preferably more after the initial release / purchase. (one year for the annual game series - CoD, Assassin's Creed, FIFA, etc, more for the longer term ones that will likely not get a sequel like Apex, Fortnite, even Minecraft).

<comment><USER23> Maybe there isn't really a problem with all of those games. To adults it seems ridiculous to spend money on virtual items, but to be honest, a lot of other things kids would spend their money on also seem ridiculous.

If those games cost a lot of money to make, perhaps it is fair to ask for money for some items.

<comment><USER22> The nasty trick isn't the "asking for money for some items". As you observe that's not so different from asking for money for sugar candy, it's basically useless but it did cost money to make and you don't need it per se, so fine.

But what is being called out here as _gambling_ is that you pay your money and then you get something random. It will probably be something you don't want, it might even be something you consider utterly useless.

Example: You want the Funky Guitar for Tara, your favourite character in a game. A Funky Guitar is "often" found in a Cluster Artefact the game tells you. For $10 you can buy 480 diamond blibbets. For 600 diamond blibbets you can buy a Cluster Artefact, so you give them $20, now you have 960 diamond blibbets, you can buy a Cluster Artefact. The Cluster Artefact is then smashed open by your character to reveal... a Top Hat wearable only by Steve, a character you hate playing. Too bad, buy more blibbets and maybe Tara will get lucky next time?

Gambling. A bad idea for grown-ups, obviously not something we should encourage children to do.

<comment><USER23> Sure, but they will be confronted with that trick in their lives. Maybe they can learn that it is a waste of resources.

</comment></comment></comment></comment></comment></comment><comment><USER34> That should also include watching adverts as a competitive advantage within games marketed for kids - it leads to constant intake of essentially user hostile videos being shown to young kids and it's predatory imho.

</comment><comment><USER35> I came into this thread with a strong opinion: Ban loot boxes. I think they weaken the value of all gaming, and I think they take advantage of people. Plenty of things have been banned for attempting to take advantage of people.

Going through this thread, I am softer on the view, but I think there is two big differences between what most people here are saying. First, with cards, you have a physical exchange of money---kids see that money going away and they can't just hit "OK" in a game again to spend money. Second, with online games like demonbae mentioned, you are spending your own money, not your parents money. YOU reap the consequences, not your parents bank account.

I'm less convinced these need to be banned, but I still don't see any upside for people who are not benefiting by getting as much money as possible to be spent in their game.

</comment><comment><USER36> I completely agree -- it's exploitative and relies on parental intervention for those kids who don't know any better. As others have mentioned, these could be an educational opportunity, but I don't think the experiences described here are representative.

My exposure to these things isn't through any free apps, but Minecraft. The biggest server by player number has 9 different types of boxes for sale from $3 for 10 [1]. Some of them guarantee a number of boxes at a high 'level' of reward - this seems like reinforcing gambling as something that is certain to be beneficial?

[1] [https://store.hypixel.net/](https://store.hypixel.net/)

</comment><comment><USER37> It might actually be better to let them learn the hard way before they have real money to lose. Has anyone studied the relation between this and gambling as an adult?

</comment><comment><USER38> Great, finally some movement on regulating the children's video gaming industry, it's a total disgrace and reflects very poorly on the tech industry that it's most vulnerable users are frequently the least considered. The UK is working on some of the worlds most progressive child protection legislation and I hope they create an example that will be adopted worldwide.

</comment><comment><USER39> Too old to have gambled in games as a kid, but I was at the right age for the POG phenomenon. I remember a rough afternoon at the schoolyard where I went past my limit and lost some of my most cherished pogs.

</comment><comment><USER40> Why this coming into the spotlight now as opposed to collectible sports cards, trading carding games, coin operated gacha/cache capsule machines, etc?

<comment><USER41> With trading cards, you can trade with your friends, or buy rare cards on Ebay. Since they're physical, there's no DRM. With skinner boxes, most games don't let you transfer skins so there's no marketplace and the only way to get rare skins is to buy coins and gamble.

<comment><USER40> Physical comes with its own set of problems, like bootlegs, which I've fallen before. And there are games that do have aftermarkets like PUBG and Counster Strike iirc. Are those blameless? They were/are some of the biggest lootbox games actively played today

Edit: it's to its

</comment></comment></comment><comment><USER42> Good point. 99% of the games for smartphones are free but involved a lot of gambling.

You might win a price every few minutes. It makes people pretty addictive to the games

</comment><comment><USER43> I wonder if the reluctance of the gaming industry to tackle gambling is willful or due to ignorance of the issue. Either they understand the issue but it's their profits at stake, so they'll ignore the potential problems. Or have these stealth gambling mechanisms entered the games gradually and without the industry realising that what it's doing is actually gambling and there repercussions to that.

<comment><USER38> The idea that they are ignorant is repugnant, they know exactly what they are doing, and they have ALL the data that shows how the 'child whales' of their industry can be best exploited.

<comment><USER44> Indeed they know very well what they're doing. One could even say that they're openly spitting in the face of regulators' inability to do something about it, see for example a trailer for a new NBA game, where you mostly see literal casino-like gambling machines, and only a few seconds of actual gameplay on a basketball court: [https://www.youtube.com/watch?v=EcGZQDOOU6Y](https://www.youtube.com/watch?v=EcGZQDOOU6Y)

EDIT: The above link is not the trailer itself, but a video discussing the trailer, from an independent game critic who has been speaking out against gambling mechanics in computer games for many years, long before it became a big issue.

</comment></comment></comment><comment><USER45> This has me thinking all games with loot box mechanic should be labeled 18+

</comment><comment><USER46> The actual report is here: [https://www.parliament.uk/business/committees/committees- a-z...](https://www.parliament.uk/business/committees/committees-a-z/commons- select/digital-culture-media-and-sport-committee/news/immersive-technology- report-17-19/)

I found this remarkable: "'Lack of honesty and transparency' reported among representatives of some games and social media companies in giving evidence."

Some quotes from the report:

> 62.We were contacted by a member of the public whose adult son built up > considerable debts, reported to be in excess of £50,000, through spending on > microtransactions in British company Jagex's online game RuneScape. For > example, bank statements showed that in one day the individual spent £247.95 > by making five separate payments to the company. The resulting debt caused > significant financial harm for both the player and his parents, whose > evidence attributed the situation to the fact that Jagex has no limits on > the amount of time or money players can spend on the game.118 This > demonstrated to us that even companies with good policies to support some > aspects of player wellbeing can fall short in other areas.

You don't take £50,000 from a player in microtransactions without realising something is fucked up.

> 65.With so many games featuring microtransactions, we asked other leading > games companies what they do to prevent people from spending more than they > are able to in a game. Epic Games, the makers of Fortnite: Battle Royale, > said that although it has no specific cap on how much people can spend, > purchases are limited to what is in the virtual shop and so the maximum > anyone could spend would be about $200 a day.124 The company's director of > marketing suggested that it is an individuals' responsibility to manage > spending and that the company provides tools, including parental controls, > "to allow players to make those decisions for themselves."125 However, as we > have already examined, parental controls are of limited effectiveness when > it comes to adult players.

> 66.The games companies we spoke to were generally reluctant to accept that > they might have a role or responsibility to intervene proactively if a > player's spending fell outside of normal patterns. Moreover, they said that > it would be too difficult to determine what level of spending might be > harmful. Alex Dale, senior vice president for King, the makers of Candy > Crush Saga, told us that while it used to alert users when they reached a > certain spending threshold, it had stopped doing so because of player > feedback. He told us:

>> we would send an e-mail out when a player's spend was $250 in a week for the first time. It was an e-mail that said, "We notice you are enjoying the game a lot at the moment. Are you sure you are happy with this?" […] We got back, "I wouldn't spend the money if I didn't have it" and things like, "I'm fine, please leave me alone". We felt it was too intrusive so we stopped doing that.126

> 67.Dr Henrietta Bowden-Jones told us that the games industry might learn > from approaches in the gambling industry, which has much clearer, industry- > wide protocols enabling people to self-exclude from spending.127 She told us > that "gaming is several years behind gambling in relation to protecting the > vulnerable", a situation that the then Minister described, if true, as > "lamentable", adding that "the industry has a job to do."128 When we asked > Neil McArthur, Chief Executive of the Gambling Commission, whether games > companies should be obligated to monitor how much people spend, identify > people with a problem and proactively support them, he responded that, "this > is an area where progress needs to be made."129 His colleague Brad Enright > went on to tell us that self-exclusion measures to protect players "could be > adopted by the video games industry voluntarily to address some of the > concerns about excessive time [and] excessive expenditure."130 Yet the Royal > College of Psychiatrists goes further in suggesting that:

> > There should be no in game spending by children. Children are less > prepared to deal with the potentially addictive nature of some modern > computer games and are less able to make informed decisions about > spending.131

Apple, Google, and game makers need to understand what's happening here. This is a push towards regulation. They need to implement pretty effective self regulation or UK government will impose strong regulation upon the industry.

<comment><USER47> > Apple, Google, and game makers need to understand what's happening here.

I'm pretty sure Apple understands. That seems like the whole point behind their new game subscription deal - the games included aren't allowed to have microtransactions. On the other end of things their screen time and ask to buy features are global, powerful, and not super hard to discover.

Google has similar parental control tools, though that's tempered by the fact that they can't be made global. The Fortnite port on Android, for instance, completely side steps it.

That said, I'm pretty sure neither stores make distinction between gambling and other forms of in app purchases.

</comment></comment><comment><USER48> Sounds like a solution a desk jockey lawmaker, or at least to their knee- jerking constituent pitch-fork mob demanding justus wouls come up with!

But in reality a ban prevents regulation and will usher in an era of illegal underground loot-box mods with hyper effective sublimal hypno-tech.

Well I mean the prohibtion of kitten-huffing should be example enough of the consequences of an unregulated drugs bazaar.

Better to have government issued loot boxes provided to children at school, like the UK lottery or the sugar-tax

/Sarcasm

But seriously the way things play out on the street is rarely how they look on paper as idealistic laws.

The solution ?

A little of both ;-)</comment>


The Debate over Regulating AI Ramps Up - <AUTHOR> https://www.nextplatform.com/2020/01/27/the-debate-over-regulating-ai-ramps-up/ <comment><USER2> I once considered teaching myself to make neural networks with Python. I wanted to gather as much data as possible on NBA statistics so that I could win Warren Buffett's $1 Billion dollar challenge to fill out a perfect March Madness bracket.

I then did some research, and found that other people have done that before, and that no matter how many perceptrons you have, and no matter how many layers you create, and no matter how much NBA data you download, you can never have more than 70% accuracy in predicting the outcome of NBA games.

This stands in stark contrast with the likes of Eliezer Yudkowsky and Ray Kurzweil who claim that enough perceptrons inside an AI will cause that AI to "escape the box" and turn all of humanity into paperclips.</comment>


Why would anyone start a blog so few people care to read? - <AUTHOR> http://comre.quora.com/Why-would-anyone-start-a-blog-so-few-people-care-to-read

<comment><USER2> In no particular order

\- Improve writing & thinking skills

\- Get your name indexed by Google ; )

\- Get your name out there as an expert

\- Bring light to blog topic

\- Shape the future of thought around said topic

The question I have, out of the Law of Few, who are you?

<comment><AUTHOR> All great reasons. Many of which I did not consider when I started, but soon recognized.

Probably a Maven, if I had to pick one...

</comment></comment><comment><USER3> So why did you start it??

<comment><AUTHOR> tl;dr version, is much of which cpursley hit upon -

1\. Get my name out there as an expert 2\. Bring light to blog topic (CRE's aversion to adopting new technology) 3\. Shape the future of thought around said topic (advance the adoption of new technology) 4\. Create a cost effective method to identify and market to early adopters. (This is the more come part of the Quora blog post...)</comment></comment>


Shift Your Mindset Before Quitting - <AUTHOR> https://getmarlow.com/article/shift-your-mindset-before-quitting-1512585001346x530751118426767400 <comment><USER2> This post seems somewhat light on details. You open with talking about being frustrated by open plan offices or long commutes (things that I would categorize as major traits of a working environment, likely hard to change), but then completely ignore them in your examples of people you've helped. What is your advice to people who, for example, used to like their job but began to lose it when their office converted to open plan, or worse yet hot desking?

<comment><USER3> > This post seems somewhat light on details.

That's because it's content marketing designed to get you to think about buying the career coaching service they're selling.

</comment></comment><comment><USER4> I'm gonna call bullshit.

If an open office sucks or the other reasons listed suck, just leave. There is a virus out there that you NEED a company to be 'someone' in the dev world. This is a lie.

Med > big > bigger companies really don't care about you. That's why they have 'human resources' - you are just a resource. And HR Is there only to protect the company and not you.

The best thing you can do is think for yourself and listen to your intuition. If it's telling you "this is lame" for whatever reason, it's in YOUR best interest to leave and do something else. Start your own company or 1 person labor of love and don't worry about someone else's opinion.

You have a very limited time on this planet and you should be living your life to your fullest. Not to any company's. You're just selling yourself short otherwise.

</comment><comment><USER5> Well, to each their own. But I've been through numerous ordeals in my career where I pulled out all the stops to change myself or change my role in order to hang on to a company that fundamentally wasn't a fit. I regret wasting all that time. Never did I look back and feel glad that I'd tried everything. Never did any of the consequences I feared from quitting, happen. Yes, this is especially easy for programmers in a long running seller's market, but I like to think it generalizes to some degree.

Also, I immediately thought of trying to change yourself to make a romantic relationship work. Now, if you're unhappy with _yourself_ , then by all means, change. But otherwise, I think changing yourself to make a relationship work is questionable.

</comment><comment><USER6> not op, but google cache has a copy if the link isn't working

[https://webcache.googleusercontent.com/search?q=cache:4PCbv-...](https://webcache.googleusercontent.com/search?q=cache:4PCbv- pGR8YJ:https://getmarlow.com/article/shift-your-mindset-before- quitting-1512585001346x530751118426767400+&cd=1&hl=en&ct=clnk&gl=us)

> One client was feeling bored, disengaged and undervalued at his small > company. His role wasn't a particularly good fit for his strengths and he > didn't have as much responsibility as he would have liked. Through exploring > his interests and strengths he proposed a change to his manager to take on > more work related to the financials of the company - despite feeling that he > didn't have the formal training necessary, this was an area where he wanted > to grow. Based on that conversation, he ended up taking over all financial > aspects of the company and absolutely loves his new role and > responsibilities.

he must have one heck of a charming personality. is fantasy corp hiring for ceo? i have no experience or relevant skills.

<comment><USER7> The process of taking over the financials could have taken a decade.

</comment></comment><comment><USER8> Let me just tl;dr this. If you aren't happy with your job, don't just quit and find another job. Evaluate why you're unhappy and see if you can adjust to or change your situation. Otherwise take some time to plan and find a job that's a better fit so you don't just stumble back into the same situation. I think the central point got missed because of the initial reaction people on HN have to marketing in general.

</comment><comment><USER9> Cached: [https://webcache.googleusercontent.com/search?q=cache:4PCbv-...](https://webcache.googleusercontent.com/search?q=cache:4PCbv- pGR8YJ:https://getmarlow.com/article/shift-your-mindset-before- quitting-1512585001346x530751118426767400+&cd=1&hl=en&ct=clnk&gl=us&client=firefox-b-1-ab)

</comment><comment><AUTHOR> Thanks for the feedback.

<comment><USER10> Got a mirror up somewhere?</comment></comment>


Show HN: Kubernetes Manager – A Kubernetes Dashboard / Status Page - <AUTHOR> https://github.com/mlamina/Kubernetes-Manager <comment><AUTHOR> I wrote this little tool mainly for myself, because I felt the need to have some kind of quick overview / status page for my Kubernetes clusters. Since IMHO there is still no tool out there providing this kind of functionality the way I wanted it to be, I just put the code on Github and hope that it might help some colleagues in need :)

These are some of the core features that I find the most useful:

\- Quickly view the (color-coded!) status of all RCs, pods and services in realtime per namespace

\- Delete pods and RCs with one click

\- List and search recent cluster events and quickly jump to related resources

\- Follow the progress of rolling updates in realtime

</comment><comment><USER2> Nice! I'll have a go of this tonight when I get home.</comment>


Analyse Asia 47: App Annie in Asia with Yu Junde - <AUTHOR> http://analyse.asia/2015/07/23/episode-47-app-annie-in-asia-with-yu-junde/ <comment><AUTHOR> Synopsis: Yu Junde, Vice President, Asia Pacific from App Annie joined us to discuss the footprint of App Annie in Asia Pacific. Starting from the origins of App Annie and how the company went from Beijing to San Francisco, Junde shared why Asia is the most interesting market in the world for mobile. We also discuss the reasons on why China has now surpassed US in iOS downloads and the interesting case of app monetisation in Southeast Asia where Google Play revenues are starting to exceed Apple iTunes Apps Store with the advantage of mobile career billing.</comment>