Lua 5.4.0 - <AUTHOR> https://www.lua.org/manual/5.4/readme.html#changes <comment><USER2> It would be interesting to know how many projects are using regular Lua vs LuaJIT, as the two implementations have diverged.

When both were on version 5.1, there didn't seem to be any downsides to LuaJIT. Many Lua projects could benefit from it as long as they weren't trying to run on a platform that disallows JIT compilation (e.g. iOS or a game console).

However, now that LuaJIT is 2-3 language versions out-of-date, and has different best-practices (e.g. around FFI), it's almost like the two are different languages.

<comment><USER3> Performance-wise Lua is not too far behind LuaJIT that you should just "never" use Lua. I used Lua for a long time without problems, and in the cases where you need that extra performance you are just one "system call" away from native performance for that specific operation. I used to benchmark these things (for my use cases) for a long time, and Lua was always somewhere between 50-100% slower than LuaJIT, which is _NOT_ a lot. It's a mistake to think that people implement Mandelbrot as a script callback. :)

It's unfortunate that LuaJIT fell behind so much, but as far as game engines who need a scripting language goes: You are either safe with Lua, or you have other alternatives: JavaScript, WASM, dynamic libraries and so on.

<comment><USER4> I recently redid the graphs of the luajit benchmark results to highlight performance across architectures: [https://gist.github.com/cellularmitosis/55ff55b55008b2f1c42b...](https://gist.github.com/cellularmitosis/55ff55b55008b2f1c42b4d0e46f58c76)

<comment><USER3> Nice work, man. I was doing microbenchmarks where I among other things measure the 90ns (JIT) and 120ns (Regular) function call overhead of Lua. My benchmarks was compared to my own scripting backend where the call overhead is 4ns, and it always feels a little bit like cheating when you have a gigantic headstart with each test.

I'm not surprised the JIT isn't that good, but this is crazy almost! Did you compare against the latest version of Lua?

[https://gist.github.com/fwsGonzo/f874ba58f2bab1bf502cad47a9b...](https://gist.github.com/fwsGonzo/f874ba58f2bab1bf502cad47a9b2fbed)

In my microbenchmarks LuaJIT was always faster than Lua, but not so much that I wouldn't stop using Lua. In my mind once you stop developing a language it stops being interesting, because you are always looking for ways to simplify and remove whole classes of bugs.

EDIT: I just built lua5.4 from sources and ran my benchmarks again, and it's markedly worse than LuaJIT still, but it's better than before for sure. My conclusion is that Lua5.4 is the fastest PUC-Lua yet.

[https://gist.github.com/fwsGonzo/2f4518b66b147ee657d64496811...](https://gist.github.com/fwsGonzo/2f4518b66b147ee657d64496811f9edb)

<comment><USER5> Some of these benchmarks are maybe not how one would do things if they were trying to go fast. An unfortunate idiom I wrote a thousand times at a company that uses Lua and tries to go fast is

      local n = 0
      local t = {}
      -- to do an insert
      n = n + 1
      t[n] = blorp
      -- to delegate some inserts to another function
      n = insert_some_stuff(t,n)

A less messy thing you could do is

      local table_insert = table.insert

but this is not as great, because lua will still do a binary search to find the end of the array each time you insert something.

<comment><USER3> That might be, but the C++ array append is bounds-checked which makes it half as fast as it could be too. It would be 16ns if there is no checking. So, you are right but I am trying to do a balanced approach here. These benchmarks are made for me, and I want to write (more or less) normal code.

I don't want to write local table_insert = ... I'd rather drop Lua for something else then. That said, it's cool that there are things you can do to speed things up if you really have to.

<comment><USER5> Fair enough! I think t[#t+1] = x is not as offensive and will get you a few nanos less than the way with two table lookups, but if that's also not to your taste then that's fine.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> This release brings many performance improvements, including a new garbage collector.

In terms of language features, the biggest new feature are the "to be closed" variables. They can be used to ensure that cleanup routines are always called, similarly to RAII in C++ or try-finally blocks.

<comment><USER5> <close> is equivalent to golang's defer (either can be implemented in terms of the other) except at the block level. imo calling it RAII mostly leads to confusion. One mailing list user recently asked a bunch of questions around using <close> for RAII. They expected RAII to work even for resources that are never bound to a particular type of local variable, for example if one writes do_thing(io.open("foo.txt")), where do_thing is not responsible for closing files because sometimes it is used with files that will continue to be used. They eventually concluded that the closest thing to RAII available was __gc.

Some users presented separate complaints about resources kept in to-be-closed locals in coroutines not necessarily being closed. You can do something to try to solve this, like setting the __gc and __close metamethods of coroutines to call coroutine.close. A "real" solution would look more like dynamic-wind. Notably golang doesn't attempt to solve this one, so maybe not solving it is fine.

<comment><USER2> > <close> is equivalent to golang's defer [...] except at the block level.

Does that mean it's the same as C#'s `using` and Python's `with`?

<comment><USER5> I wasn't deeply familiar with python's `with`, so I looked it up[0]

<close> differs from `with` in at least the sense that it doesn't have any equivalent to __enter__ and doesn't create its own block. It creates a local variable whose __close metamethod will be called when it goes out of scope. Since Lua has lexical scope at the block level rather than the function level, this works similarly to the way Python calls __exit__.

These snippets of Python and Lua are roughly equivalent. They both open a file, read one line, and close it, or do nothing if there was some error opening the file.

      try:
        with open("foo.txt") as f:
          print(f.readline())
        # f is now closed.
      except:
        pass

      local f,err = io.open("foo.txt")
      if not err then
        local f <close> = f
        print(f:read("*l"))
      end
      -- f is now closed.

C#'s `using`[1] seems much closer, except that it handles nulls by not trying to close them and lua's <close> does not include any such handling.

[0]: [https://docs.python.org/3/reference/compound_stmts.html#the-...](https://docs.python.org/3/reference/compound_stmts.html#the- with-statement)

[1]: [https://docs.microsoft.com/en-us/dotnet/csharp/language- refe...](https://docs.microsoft.com/en-us/dotnet/csharp/language- reference/language-specification/statements#the-using-statement)

<comment><USER7> The reference manual [https://www.lua.org/manual/5.4/manual.html#3.3.8](https://www.lua.org/manual/5.4/manual.html#3.3.8) seems to specify that "nil" and "false" values are ignored, so it behaves similarly to C#'s using.

<comment><USER5> Oh, that's great!

</comment></comment></comment></comment></comment></comment><comment><USER2> There are many lightweight, embeddable scripting languages available, yet Lua remains dominant. This is despite the language being "quirky" at best (and "dreaded" at worst [0]).

Is this just inertia, or is there a technical reason for new projects to embed Lua rather than a different language?

[0] [https://insights.stackoverflow.com/survey/2018#technology-_-...](https://insights.stackoverflow.com/survey/2018#technology- _-most-loved-dreaded-and-wanted-languages)

<comment><USER8> What better languages are there which are friendly to embedding? A significant part of Lua's popularity, AIUI, comes from it being easy to embed.

<comment><USER9> Guile scheme, if you have users that don't have the knee-jerk "ewww parentheses!" reaction. The threading model is vastly different from lua, but compared to regular lua you get a lot faster execution.

<comment><USER10> Guile is great and I enjoy how active it has been. However, it is no more that small embeddable lisp. Its embeddable of course, but not small by any means.

<comment><USER9> One you start wanting to run complex things over multiple interpreters in Lua (say, to use multiple threads) you might as well just use guile.

Sure, we are talking 2.5mb of library and about the same amount object code. Quite a bit larger than Lua. But that also gives you object code for working with texinfo (and quite a lot of completely unused, undocumented modules). I wonder how much could be stripped without anyone actually boticing

</comment></comment></comment></comment></comment><comment><USER5> One interesting change in this release is the move to a stackful VM. This creates a pretty small (edit: actually huge, 1978 stack frames in a lua 5.4 repl installed with luaver just now) limit on the depth of the Lua call stack. I wonder what motivated this decision.

<comment><USER11> I believe, but am not certain, that the change was made to help speed up Lua. As an embedded language, and a language that runs on embedded devices, performance is one of the key criteria of design that goes into the language. The compile-to-bytecode step may have seen some improvement with the change.

So instead of speculating on why the change happened, I've found a few bits of information around the limits that make me feel like it often simply won't be a problem.

There's some interesting discussion around the limits across various platforms here [0].

Whilst I'm not entirely clear on the motivation, even Lua running inside a browser under emcripten has a stack limit of over 4000, which is somewhat decent even for recursive functions.

Whereas on Linux you seem to be able to tweak a config when building and safely have it in the region of 20,000, and quite possibly more.

Even under a tight restriction, Lua seems to cope fairly well with it when recursing (the example crashed at 1758 recursions for a ulimit of 400).

Whilst Python has a terrible limit of 1000 for the default recursion limit which is somewhat comparable to this aggressive test, Python also has no tail call elimination - but Lua does.

I have a somewhat large Lua project (6000 lines of C, 10,000 lines of Lua) that is a recursive parser for a format that I passionately hate (think self- modifying LaTeX). With the default 5.4 limits it never hits a point where it crashes, though I had expected it to.

[0] [http://lua-users.org/lists/lua-l/2019-06/msg00083.html](http://lua- users.org/lists/lua-l/2019-06/msg00083.html)

<comment><USER12> Doesn't Lua have tail call recursion built in to the language? Stack overflows shouldn't be an issue on properly written recursive functions.

<comment><USER11> Yes, it has tail call elimination (which I think I mentioned). But you can still right badly behaved recursive functions that avoid tail call elimination, and that's when you'll hit your stack overflow.

I have a few of those badly behaved recursive functions in the parser I mentioned at the end of my comment, and expected them to overflow, but they didn't hit the default limit.

</comment></comment></comment></comment><comment><USER13> I really like lua. Especially when it comes to game with Love2d beeing so wonderful. I wish more projects adopted it as a scripting interface...

<comment><USER14> Love2D is indeed excellent, and integrates well with the Tiled map editor. It makes making games almost as easy as Macromedia Flash did!

</comment></comment><comment><USER15> "const variables" makes me giggle a little

</comment><comment><USER11> The new random library implementation should stop me dragging in a Mersenne Twister for every other thing.

It was libc's random, which is... Trash.

Now it use's xoshiro256 [a], which I hadn't heard of. (Not my area). [0] It seems somewhat similar to the MT, as it isn't cryptographically safe, but should give you a fast and fairly random set of integers back. It's also significantly faster than the MT.

[a] Followed by two asterisks. I give up trying to make them appear in HN's formatting.

[0] [http://prng.di.unimi.it/](http://prng.di.unimi.it/)

<comment><USER16> Yeah, I was happy to see the switch away from C random/srandom or rand/srand.

Not my area either, but a little surprised why a PCG-family non-CSPRNG algorithm wasn't used: [https://www.pcg-random.org/posts/a-quick-look-at- xoshiro256....](https://www.pcg-random.org/posts/a-quick-look-at- xoshiro256.html)

PCG XSL RR 128/64 (MCG) could be used for 64-bit values (albeit with period 2^126 compared to xoroshiro256 __'s 2^256 − 1) with 128 bits. Half the state size than xoshiro256 __, and the performance might be comparable (would need benchmarking). LCG version if you want to trade PRNG quality for even more speed.

</comment></comment><comment><USER17> I just recently started using Lua through the sol2 library. I'm basically providing some flexibility through my input file to my users. I'm very surprised by both library and Lua itself. For my use, I don't feel a lot of performance hit, and gets a lot of flexibility.

</comment><comment><USER18> [Unfortunately, IMHO] Lua "minor versions" tend to break compatibility with older versions, making it problematic to upgrade to new versions without breaking scripts written for older versions. I believe mpv is stuck on 5.2 due to this. Here's the list of incompatibilities for 5.4: [https://www.lua.org/manual/5.4/manual.html#8](https://www.lua.org/manual/5.4/manual.html#8)

<comment><USER19> Likewise OpenResty is "stuck" on 5.1.

<comment><USER20> "Stuck" might be a wrong word. OpenResty actually dropped support for Lua and is now LuaJIT only. LuaJIT is a fork of Lua 5.1, but it has features from 5.2 [1] (and from later versions where it sees fit). Because of this, Lua 5.1 is a golden standard of Lua world at the moment.

[1] [http://luajit.org/extensions.html#lua52](http://luajit.org/extensions.html#lua52)

<comment><USER21> There is more modern alternative to LuaJIT though - MoonJIT [1]. Unlike the former it supports modern Lua standards.

[1] [https://github.com/moonjit/moonjit](https://github.com/moonjit/moonjit)

<comment><USER22> AFAICT, MoonJIT is just a fork of LuaJIT. Both support many 5.2 extensions. Additionally, MoonJIT also has a few Lua 5.3 extensions, but it is _not_ fully compatible with Lua 5.3 or even Lua 5.2. Quote:

"Note: this provides only partial compatibility with Lua 5.2 at the language and Lua library level. moonjit is API+ABI-compatible with Lua 5.1, which prevents implementing features that would otherwise break the Lua/C API and ABI (e.g. _ENV)."

Some internal language changes in 5.3, like the new integer type, would require deep surgery in the JIT. This also seems to be the main (but not only) reason why Mike Pall doesn't have plans to ever support Lua 5.3. ([https://www.reddit.com/r/lua/comments/2zutj8/mike_pall_luaji...](https://www.reddit.com/r/lua/comments/2zutj8/mike_pall_luajit_dislikes_lua_53/))

<comment><USER23> Am I wrong? I thought the author of LuaJIT has been pretty well over it for the last 5 years and no one else picked it up.

LuaJIT had a beta release 3 years ago and hasn't been updated since.

<comment><USER22> Looks like Mike Pall is still actively working on the project: [https://github.com/LuaJIT/LuaJIT/commits/v2.1](https://github.com/LuaJIT/LuaJIT/commits/v2.1)

The last commit is from 5 days ago.

</comment></comment></comment></comment></comment></comment></comment><comment><USER24> many projects I am aware of stuck with 5.1 and luajit still and so do I. I still use lua5.1 myself these days.</comment>


Ask YC: YNot? Lemonade from Lemons.  - <AUTHOR> http://ynotcombinator.com

<comment><USER2> There's a lot more talking going on than doing.

HN is the community that you already want (need?).

If you've got an idea, just build it.

Stop wasting time wringing your hands and creating new groups.

<comment><AUTHOR> Yup, great community. Yup, building is better than talking.

Personally, I don't think marketing and communication is a waste of time, even for some one technical - especially when you are bootstrapping. For other folks, it's a login with OpenID, and a copy/paste of info they already have. It helps with page rank too.

</comment></comment><comment><USER3> There's demand from decent startups for the YC advantages which outstrips their capacity, per pg's posting. I'm not nuts about the Ynotcombinator concept. I don't see not being in ycombinator as a defining characteristic of myself or a group I would join.

Chiefly, I'd be interested in ways to get to know angels and find good mentors and a social/support group environment for startups. (Startupaholics Anonymous?). I think some of this works best at the local level. If anyone has suggestions for something like this that exists or they'd like to start, I'm open to it and in Boston.

<comment><AUTHOR> Yup - YCombinator is simply busy. YNotCombinator is not an anti-group - it's a pro group - simply another channel to communicate your idea, and hopefully find an angel. Some submitters don't even have blogs - so I thought... YNot.

Boston already has some great stuff. MIT enterprise forum, 40 colleges and Universities - pick the talks happening at Business schools. Plenty of startupaholics there. Meetup.com can be lame for this stuff, or good. I like craigslist.

<comment><USER4> >simply another channel to communicate your idea

I thought that one of YCombinator's key values was picking good people and teams, not good ideas.

<comment><AUTHOR> That's a good point actually. I'm just becoming familiar with YCombinator, and not questioning the selection process. I think this community and the selection process is working pretty well.

Hoping communicating through YNotCombinator can show that I am a "good person" and help me attract a good team. Since my stuff is pretty far along, I'm at the stage where the idea, and proof of concept are fairly mature, and I need the team and attention.

</comment></comment></comment></comment><comment><USER5> The concept aside - the logo needs some work; white text on white waves, hurts the eyes.

<comment> craig-faber NewsCup looks good though.

<comment><USER6> I'm not sure what you could be basing that on. I didn't see any demos (or did I miss a link?). I read a list of features and a vague description in a few places. You can't really make a judgment either way.</comment></comment></comment>


How to Minimize Politics in Your Company (2010) - <AUTHOR> http://www.bhorowitz.com/how_to_minimize_politics_in_your_company <comment><USER2> Summary seems to be :

\- Hire people who want the company to succeed and trust that they will be rewarded when it does \- Keep the upper management "political pain points" under clear transparent and fair rules. never ever deviate.

Sensible but it misses one utterly vital thing - the iron clad trust that must must exist from the employees to the CEO - that they will only and ever be evaluated on clear criteria, that the company has their back and will not fire them because it just needed to. I do not remember trusting any employer except one to that level.

Look at Facebook " You can either be good at hiring of good at firing. I'm good at firing"

We glibly talk about the death of the job for life, even in Japan. But without that contract everything Ben talks about here is words written on the wind.

When you hire someone be sure that you will keep them through Hell, reward them with your daughters hand in marriage and half your kingdom. Then you can believe they might trust you back.

<comment><USER3> It's a lot more tactical than that. That's just his first step (which is fluff, as you say).

He suggests some methods for sorting out problems which seem really counter- intuitive; but political problems are not most problems.

A political problem (to him) is one that gets worse as you discuss it with other people. Either because it's zero sum, confrontational, or because it encourages squeaky wheels.

Let's factor his tactics out:

1\. If you can make political stuff formal, it shuts down squabbling.

2\. If something comes up outside the formal process, don't talk to the person who brought it up. Just shut them down, and figure out what to do about it without them.

<comment><USER4> Eh, these formal review processes with 0 outside discussion can REALLY hose you though if you have the pay scale at some tier off. You'll basically force that tier to leave to get the compensation they deserve. And when the economy in that area opens up, it will not necessarily just be one person who leaves at that time.

<comment><USER3> Zero outside discussion doesn't mean zero awareness. There's bound to be someone who brings it up. But he's saying that you don't have a debate over it, and certainly don't pay off the people who complain - you fix it quietly.

If the manager doesn't realise that they are paying too little ... honestly they are so dim I don't think any good advice will help. A manager should know more about the business side than the people they are managing.

<comment><USER4> > certainly don't pay off the people who complain - you fix it quietly.

But that's exactly what the person i'm responding to said: No raises if you mention you are (all) underpaid (or you personally are underpaid).

It leads to those games where promotion gets linked to compensation, so people are promoted because otherwise you'll lose them, not because they're best for that role.

Companies pay low 5 figures to many databases to figure out how much to pay role X or Y or Z. I don't think managers and the people make budgets for departments are always aware of the salaries of different roles. And I don't think HR people are always aware of the differences between different people who make them worth X over worth 1.5X

This is advocating for paying the way governments do. Is that really the solution? Because govt: that's the definition of apolitical.

This is a solution that doesn't lead to the objective of the policy.

</comment></comment></comment></comment></comment><comment><USER5> Buffer is doing a really good job on this. I believe complete transparency is the only way to minimize politics in your company.

[1] - [http://open.bufferapp.com/introducing-open-salaries-at- buffe...](http://open.bufferapp.com/introducing-open-salaries-at-buffer- including-our-transparent-formula-and-all-individual-salaries/) [2] - [http://techcrunch.com/2014/02/13/radical-transparency-and- ho...](http://techcrunch.com/2014/02/13/radical-transparency-and-how-buffer- is-changing-the-game-on-startup-culture/)

<comment><USER6> They do not pay competitively, especially for people that live in California.

There's a ~5-10x cost of housing difference between where I live now (Texas) and where I lived in California. $22k would not make up that difference.

They're denying themselves access to better people because they can't avoid politics without using blunt instruments. That gives me less rather than more faith in the management.

Their base salaries aren't even competitive for a middle-of-the-road remote expat programmer working out of Thailand.

That having been said, I'm all for more experimentation. Good on them for being willing to take a risk and be open about it.

</comment></comment><comment><USER7> This reminds me of Ray Dalio's principles by which he runs Bridgewater: [http://www.bwater.com/home/culture-- principles.aspx](http://www.bwater.com/home/culture--principles.aspx)

"Radical openness" should reduce the amount of politics, in theory. I'd be interested in hearing how it works in practice.

<comment><USER8> I interviewed there (didn't get an offer, but agreed with the decision, felt too limiting technically).

In practice, it's a company wide pissing match that seeks to incubate and accelerate growth for hyper-achievers with hard heads that can openly give and receive criticism. This actually works extremely well for a certain type of personality (think Type A), especially if you are early on in your career. The growth potential was why I interviewed in the first place. I'd say the most accurate summary is:

[http://www.businessinsider.com/inside-bridgewater-what- emplo...](http://www.businessinsider.com/inside-bridgewater-what-employees- say-its-like-working-there-2011-11?op=1)

Inherently, this type of culture results in one major drawback; lack of diversity. If you need a specific type of personality in order to join a company of others who have very similar personalities, what happens to innovation? Where do new ideas come from? How do you evolve? How do you understand different markets and audiences? etc etc. The best teams I've seen have had very diverse sets of backgrounds, level of experience, and personality.

While BW has worked out much of this (being in finance helps), that was my burning thought throughout the process. My conclusion was that such a culture would be an excellent place to be for some time, but staying too long would only serve to pigeonhole you.

</comment></comment><comment><USER9> Pretty sensible article. I think political problems in a company become more likely as companies grow and add more people. A dozen close-knit people who trust each other will have less trouble than a 200+ person company with layers of management and numerous colliding ambitions.

If possibly perhaps the best thing is to keep your company small? We don't all have to try to be Facebook. I like to dream about starting a small company that offers a simple product that just does one thing well so that me a handful of others can just run the thing.

<comment><USER10> Small companies can also be affected very severely. In many 2nd-3rd world countries it's almost guaranteed that small companies and startups will be infested with politics and in fact large corporations are seen as better places to work in terms of politics (and pay actually). Depends on the culture and mindset of the founders.

<comment><USER9> In 1st world countries too most likely. Small companies bring their own political challenges certainly, and for some people a large company where they can just blend into the noise might be better. I just think I'd have an easier time navigating political issues with a small group where everyone knows each other well.

</comment></comment></comment><comment><USER11> Caustic internal politics in my experience seem to come from two things:

1 - lack of a clear direction and focus

2 - lack of good clear and transparent communication

No matter what, you are going to have politics in an organization, a good leader needs to direct the tone and shape of those politics.

With #1 - you end up with multiple people jockeying for ad hoc positions of leadership in an organization. A clear organizational structure (it doesn't have to be a complex hierarchy) with clear and transparent methods for moving up down and across it, prevents this. I see this mistake being made often with "flat organizations" where that's a code word for "no organizational structure" and you end up with powerful personalities in charge of little fiefdoms they've carved out in the company each with their own set of rules and politics. Nothing sucks more or wastes more company time and resources than playing Game of Thrones with all the assertive personalities in your company.

Some "code words" that might mean a place suffers or will eventually suffer from this: "flat organization", "no manager titles", "hands-off leadership", "management that gets out of the way" etc.

I'm not saying these are always indicative of a cultural problems, a flat organization can still be well structured and have strong focus, or a manager may have gifted the mantle of leadership onto somebody else for the duration of a project and taken a "hands off approach". But in my experience this is pretty rare.

This doesn't eliminate politics, but it makes it take the shape of people who want to align with the focus and people who want to go a different direction. This becomes a high level metric you can use to evaluate reports. If they aren't with the program then perhaps they should go work elsewhere?

With #2 - information vacuums breed rumors and rumor trading/gossiping becomes information control, another kind of leadership metric. The kind of backstabbery and reputation ruining gossip only breeds in organizations where intentions and direction and expectations of the company are not clearly communicated.

I remember one place I worked at, over a 6 month period, a bunch of senior managers all left. There was zero communication about this and rumors started running around "the CEO has lost his mind!" "I heard this guy was having an affair with the receptionist" "this group is going to be next!" "I be we're running out of money!" etc. etc. turns out two things were actually happening, the technology platform was changing and many of the senior managers weren't comfortable with this and wanted out. The CEO thanked them for their years of hard work and gave them a few weeks to find something else as a token of thanks. The other was that he wanted to grow the company and needed a different team to get him there -- his previous team was excellent for early stage growth, but the kind of loner term growth just needed a different set of skills. These two events coincided, were easily explainable and would have squashed most of the rumor trading. But the company had a culture of secrecy, starting at the top, and rumor trading became the cultural norm in the company. People probably spent as much time gossiping as they did getting work done, and it wasn't an effective organization at the time.

In other cases, I've seen this used specifically as a proxy for keeping the employees well managed. Spread disinformation from the top and watch the employees fight with each other over conflicting stories. They won't be fighting for actual positional authority and you, as the CxO, can be free to do what you want. It's called "Machiavellianism" and they make probably with worst places on the planet to work outside of a traditional leather factory.

<comment><USER12> _Nothing sucks more or wastes more company time and resources than playing Game of Thrones with all the assertive personalities in your company._

The answer is not to put a rigid organizational structure. It's to avoid hiring people you wouldn't trust to have your back, or, if one has been hired, to avoid promoting him or her into a position of leadership.

<comment><USER13> Do you think power games are more common or more toxic in schools among teachers, who are part of a rigid organizational structure, than among students, who are not? All evidence suggests that alliances, betrayals and bullying are far more rampant in less rigid organizations, because that's where they matter more.

Saying you should hire people who will have your back is as practical as saying buy low and sell high. Nobody intentionally hires people that are clearly disloyal or disruptive.

</comment></comment></comment><comment><USER14> This is great. Where can I find other practical "manage the managers" advice like this?

<comment><USER15> For a start, you can read the archive of that blog.

</comment></comment><comment><USER16> >You might even give the employee a raise. This may sound innocent, but you have just created a strong incentive for political behavior.

...and if you don't, you just created an even stronger incentive for all your talent to quit so you're left with the people who coast, knowing they are paid their actual value at most or who feel they would get less in another job. People who are good at what they do always, ALWAYS keep an eye on their value vs pay. Not to mention word of mouth - if you pick up a reputation as underpaying or unwilling to give deserved raises, it will affect who applies, reducing the quality pool by limiting applicants to people in an even more underpaid job, unemployed, or otherwise desperate, while anyone better will be seeking to use it as a stepping stone to somewhere that pays them fairly for their skill.

I've worked at a company that followed that 'advice' before and as a result, everyone was grossly underpaid and there was a high employee churn rate, despite themselves advertising in their job listings (which they still do) as having good career opportunities.

</comment><comment><USER17> >>> By conducting well-structured, regular performance and compensation reviews, you will ensure that pay and stock increases are as fair as possible.

Simply installing formal processes won't solve the problem if it's widely known that those processes have to be bypassed in order to get anywhere. It doesn't take long to figure out that all real career advancement activity occurs out-of-cycle.

</comment><comment><USER18> looks like GitHub is in need of this article!!

<comment><USER19> Ironic, because the blog is from a founder of A16Z, and Github was funded by A16Z.

</comment></comment><comment><USER20> Reject MBA culture.

</comment><comment><USER21> Replace people with robots.

I'm only partially joking.

<comment><USER22> Robots will have their own agendas though, so you'll still have politics.

<comment><USER23> At least the agendas can be manipulated. :)

</comment></comment></comment><comment><USER24> office politics is a shelter for incompetence.

</comment><comment><USER25> There's good politics and bad politics. Good politics seems to emerge when people really care about the greater mission, but disagree on how to go about it. It's still frustrating, because there are disagreements to be resolved, but usually you can get everything out in the open if there's good management. Bad politics is when people are out for self-advancement and will continue with disruptive behaviors until terminated. Bad politics tends to be personal, as decisions about unrelated matters become referenda on the people the topics are associated with.

If you don't have the good politics or bad, it means that people don't really care. However, the stakes in white-collar America are usually high enough that the bad kind of politics will typically emerge no matter what.

What I think is important is keeping enough transparency that the good kind of political activity doesn't devolve into the bad kind. That's a fairly common scenario. Usually, people get tunnel vision about the specific victories they need (or think they need) and start lashing out at the people they think are blocking them (often, without telling anyone why they're doing it) when it would be better to figure what the actual conflicts are and how to make everyone win, as much as is possible.

</comment><comment><USER26> What's the best way to translate a meeting with one executive complaining about the behaviour of another executive into a meeting with both executives? Even if you schedule the meeting, aren't you admitting that you can be swayed by the influence of the first executive whispering in your ear?

<comment><USER27> If B were to come to me to complain about A. I would ask the following:

\- Did you talk to A about the problem? (generally the answer is no)

In whatever case, you set up a meeting. And you LISTEN.

What comes out of the meeting depends on the situation. It might be a real problem, or just a misunderstanding. You might be surprised how much A and B will be grateful for the meeting.

By doing this you send a clear message to potentials As and Bs.

"If you come to me and talk about someone, I will make you say that to his/her face." "If someone comes to me and complains about your behavior, I will include you in the problem solving, nothing will happen in your back."

<comment><USER28> This reminds me of what someone smart told me a while ago: If you're supposed to be the leader and no one comes to you with their problems you're not really the leader any more. This may cause people not to come to you with their problems any more.

I'm not saying your approach is _always_ wrong but I would guess it would backfire around 50% of the time. Sometimes, B comes to you because he doesn't trust A. Getting A in the loop isn't going to restore that trust. If A and B could work it out together most likely they already would have. You need to do more in this case than simply getting them to talk. You need to understand why the trust was broken and work to repair it. Or, split them up.

<comment><USER27> _If you 're supposed to be the leader and no one comes to you with their problems you're not really the leader any more._

A lot of ego and politics in that definition of a leader.

What about this: the purpose of a leader is to become useless?

A leader is there to empower his team, and yes, there are always problems to solve, but you're job isn't solving your problems, it's to teach them to solve problems.

How is your company going to grow otherwise?

 _Sometimes, B comes to you because he doesn 't trust A._

When two people in your team no longer trust each other, it means you had a problem running for a long while and you haven't been doing your job correctly.

It also falls in Ben's category two and must be treated differently.

 _You need to do more in this case than simply getting them to talk. You need to understand why the trust was broken and work to repair it._

When trust is broken, this is what I call a "broken arrow" situation and this isn't something you just "fix". This generally ends up with someone leaving.

<comment><USER28> I see where you're coming from but I think it's not as black and white. There are going to be situations and problems the individual or the team feel like they can't solve themselves. The definition isn't about ego, it's something observed externally, it has to do with the official structure vs. the un- official social order.

I think trust builds and breaks over time (breaks more easily) and external intervention can help to prevent this from getting to the point where someone has to leave. My point though is why is B coming to you about A in the first place and why is forcing them to talk in front of you a good solution to that?</comment></comment></comment></comment></comment>


An invention a day for the past 4 years - <AUTHOR> http://iotd.patrickandrews.com/

<comment><USER2> It scares me to think (parts of) how many will probably be patented even though this guy thought of them by himself.

<comment><USER3> That is part of his strategy, by publishing the ideas in his blog the ideas are now in the public domain and therefore not patentable. IBM used to publish a quarterly magazine with details of inventions they didn't think worthy of patenting so that others then could not patent them:

[http://en.wikipedia.org/wiki/IBM_Technical_Disclosure_Bullet...](http://en.wikipedia.org/wiki/IBM_Technical_Disclosure_Bulletin)

<comment><USER4> TDBs were one of our (many) standard resources for finding prior art when I worked in IP.

</comment></comment></comment><comment><USER5> This is like a more realistic Halfbakery.

<http://halfbakery.com>

<comment><AUTHOR> I've been following the ideas of this guy also: <http://stealchoofsideas.blogspot.com/>

Would be worth a post of its own, some are really technical.

<comment><USER6> Cool site. I like this one <http://www.antiyawn.com/stealmyidea/socialnewstime.jpg> against the eternal september.

<comment><USER7> Didn't pg do this and found it made no difference in the quality of the posts?

</comment></comment></comment></comment><comment><USER8> He's the walking one man reason a lot of people would like to change patent law to be "first to file".

</comment><comment><USER9> That is really impressive. Has anything been actually made yet?

And I really miss a rate system and/or a Best Inventions section. The "Feasible inventions" is not a complete replacement because it's ordered by time, not rate.

<comment><AUTHOR> At least one has been made :) : <http://www.patrickandrews.com/design/index.php?next=25>

But I suspect he has more projects going on.

<comment><USER9> That is one product I would buy.

</comment></comment></comment><comment><USER10> Is anyone else recieving a "bandwidth limit exceeded" message when they try to view the link?

<http://iotd.patrickandrews.com/>

<comment><USER11> Yes.

Text-only-semi-Cache: [http://webcache.googleusercontent.com/search?q=cache:9INmQEi...](http://webcache.googleusercontent.com/search?q=cache:9INmQEisq6QJ:iotd.patrickandrews.com/+iotd.patrickandrews.com&cd=1&hl=de&ct=clnk&gl=ch)

</comment></comment><comment><USER12> Apologies....situation fixed now at <http://iotd.patrickandrews.com> Thanks for all the comments, by the way.

</comment><comment><USER13> The White Knight from Through the Looking Glass would be jealous.

</comment><comment><USER14> The re-roll idea is brilliant.

</comment><comment><USER15> silly Ideas are a dime a dozen

<comment><USER16> Four years of sustained imaginative effort isn't.

<comment><USER15> Hm. Its an accomplishment I guess. Like a huge ball of string.

<comment><AUTHOR> He gives all these ideas away for free, seems to have fun writing them, while making a point about IP in general ( <http://iotd.patrickandrews.com/about/> ).

Why belittle the effort?

<comment><USER15> Doesn't belong here. How about pictures of my wife's cats?

<comment><USER8> Take a picture of your wifes cat every day for 4 years and then get back to us.

<comment><USER15> Exactly. Its a stunt, but not otherwise interesting.</comment></comment></comment></comment></comment></comment></comment>


Why is there a normal galaxy sitting at the edge of the Universe? - <AUTHOR> https://www.syfy.com/syfywire/why-is-there-a-normal-galaxy-sitting-at-the-edge-of-the-universe <comment><USER2> Nice gravitational lens observation! We're hoping to use the same technique with the Sun to observe exoplanets by launching a fleet of small satellites to 547 AU (80 billion km / ~3 light days). The craft would sample the distorted Einstein ring around our Sun from that vantage point, then combine and reconstruct an image of the disk of an Earth-like exoplanet up to 100 light- years beyond, at a resolution of 25 kilometers / pixel.

[https://orbitalindex.com/archive/2020-07-08-Issue-72/#more-o...](https://orbitalindex.com/archive/2020-07-08-Issue-72/#more- on-that-solar-gravity-lens-focus-mission)

<comment><USER3> > it'd still take 25 to 30 years for them to reach a vantage point .... > > mission designers would have to pick carefully because they could observe > only a single target

It will take 30 years to get in position but then we can only look at one target? While it sounds very neat, I'd rather fund something we can use more than once, and sooner.

<comment> augusto-moura You CAN use for more than 1 target, you just need to reposition the telescope a bit. See [1], is a great great video on the subject. I can't recommend enough

[1]: [https://www.youtube.com/watch?v=NQFqDKRAROI](https://www.youtube.com/watch?v=NQFqDKRAROI)

</comment></comment></comment><comment><USER4> All right hackernews. Genuine question, not sure where else to ask.

If galaxies and stars at the other "end" formed out of matter resulting from the big bang, just as the matter we are made of, how did we get here at the same time that that matter got there?

Is it because speeds faster than light are possible, and around the big bang all matter was spread near instantly at that speed? I don't understand how matter of the same "kind" was spread throughout the universe all at the same time without traveling at speeds greater than the speed of light. Because if we watch the "opposite" direction from where the big bang occurred we don't really observe matter in a state closer to its original state, or parts of the universe in radically different states - which should result from that matter traveling further than the matter we are made of, as for us to now catchup with light that is "younger" than that towards the core of the universe. Am i missing something?

<comment><USER5> this is because things aren't 'moving apart'— space itself is expanding (into what? nobody knows). it's not that the galaxies are being propelled apart from a force in a particular place either; _everything_ is expanding away from _everything else_.

On the traditional balloon model, the surface of the balloon represents space itself. Those dots on the surface of an expanding balloon are not moving relative to space (the surface of the balloon), and so despite the distance increasing between us, the rate of increase of that distance is not bound by the speed of light, which only limits passage _through_ spacetime.

The wikipedia page on redshift describes well how redshift applies to objects which are in space that is expanding: [https://en.wikipedia.org/wiki/Redshift#Expansion_of_space](https://en.wikipedia.org/wiki/Redshift#Expansion_of_space)

<comment><USER6> >"space itself is expanding (into what? nobody knows)"

I have a terrifying theory on this (granted, the Earth will be long gone). What if the universe is not actually expanding in the sense that it is being propelled by an initial explosion, but instead falling towards a much greater mass - the end of time so to speak, where all mass ends. Considering that gravity is a "weak force", the scale of such a mass makes me uncomfortable to think about.

Perhaps what we observe as the fabric of space-time itself "stretching" is actually a similar process to what happens to matter as it enters a black hole?

<comment><USER7> From my layman's perspective, I think this is plausible, and many physicists seem to agree it's plausible. Maybe another plausible explanation could be the reverse: maybe before the Big Bang, our/the universe was in the state you describe, and the Big Bang is our perception of it "snapping back" and exploding violently outward (aka a white hole).

Carlo Rovelli and others propose that black holes actually only appear as they do to us due to the extreme time dilation, and similar to how a photon's "perspective" is that it's experiencing all of time at once, a black hole's perspective is that it's basically a massive explosion that occurs at essentially the same moment it forms. So under this hypothesis, a black hole never reaches a true singularity, but as close to a singularity as physically possible, and then it almost instantaneously bounces back like a taut rubber band that's stretched back as far as it'll go. From our perspective on the outside, it's an intense explosion occurring in very slow motion, and from the perspective on the inside, it's an intense explosion happening all at once.

Rovelli posits a Planck star, not a singularity, exists past the black hole's event horizon, and the Planck star is the state of maximal compression between the black hole and white hole phases. And somewhat related to this, if I understand the theories correctly, our universe might be a supermassive white hole, and we might hold the perspective of being inside of a super(super)massive black hole that's turned into a white hole and is exploding and jettisoning everything inside of it. Or some stage after that. The ultra-compressed energy before the Big Bang would be an (extremely massive and dense) Planck star.

I have no idea how likely the Planck star theory or white hole universe theory might be, but my blind speculation is that if it's true, maybe dark energy is whatever's fundamentally responsible for gravity/curvature causing our white hole explosion to bend some outer medium - the hypothetical potential medium which our black hole/universe originally formed in - and interact with other extreme contractions and explosions also happening in that medium, in complex and multivariate ways. Maybe a white hole being pushed into or prodded or yanked by many other black holes and white holes from different directions and angles could be perceived from the inside as accelerating expansion of space at certain scales.

Maybe this is happening recursively, even; maybe that outer medium is itself within another even greater medium, which also is within another greater medium, etc. Maybe the nesting depth is small, or near-infinite, or infinite. Or maybe there is no outer medium to our universe, in which case that whole idea's shot.

And I'm not sure if this could be related, but Rovelli suggests the hypothetical Planck star cycle of black hole to white hole applied to primordial black holes that formed in our early universe could explain dark matter, so even without the outer medium idea there could be something here that helps us understand our large-scale observations. Maybe there could be some relation to the "dark fluid" and negative energy idea, too: [https://en.m.wikipedia.org/wiki/Dark_fluid](https://en.m.wikipedia.org/wiki/Dark_fluid)

I have absolutely no clue if your or my speculation is reasonable or not (there's currently zero evidence of any sort of outer medium, as far as I know), but the general concept of our universe being the result of a black and/or white hole does definitely seem to interest a lot of physicists.

<comment><USER8> > _So under this hypothesis, a black hole never reaches a true singularity, > but as close to a singularity as physically possible, and then it almost > instantaneously bounces back like a taut rubber band that 's stretched back > as far as it'll go._

Kind of like a graph of 1/x, where everything behaves predictably, but there's that one point that doesn't fit?

<comment><USER7> I'm absolutely terrible and uneducated when it comes to math, so I'm not sure exactly what you mean. But if you mean 1/x where x = infinity, then yes, the classical idea of a singularity (such as what's been theorized to exist within a black hole, curving to an infinitely small point) is basically like 1/infinity or dividing by zero.

Rovelli hypothesizes this never actually happens and is not physically possible, and rather, when the most physically extreme possible level of curvature does occur, it "snaps back". If true, this ensures black holes do actually behave predictably, and physics doesn't actually break down; it just gets as extreme as it can possibly get.

So under this hypothesis, x gets really high, but the universe prevents it from ever reaching infinity. This would also potentially resolve some paradoxes related to black holes.

<comment><USER9> I'm not terribly educated either, but if you don't mind a minor possible correction, I suppose GP would have meant x = 0, which is the only point where the function would be typically undefined, and the closer x gets to 0, the more f(x) approaches infinity. Conversely, the more x approaches infinity, the more f(x) approaches 0. Also, because of the way these things are usually defined, it doesn't make sense to say x = infinity, it only makes sense to say x _approaches_ infinity (but it might make sense in nonstandard calculus, where infinitesimals are defined - here my ignorance already shows).

I really appreciate your comments! If you're interested in hypothesizing about physics, I think it would do you a lot of good to learn at least a bit of math to go with it.

<comment><USER6> > "I really appreciate your comments! If you're interested in hypothesizing > about physics, I think it would do you a lot of good to learn at least a bit > of math to go with it."

Not disagreeing, I just wanted to suggest that the ideas come first, right? The math simply frames the ideas in a way that we can quantify and discuss, while also providing a "line in the sand" that other ideas must be compatibile with in order to be accepted among other the ideas that have already crossed that line. Those are very important things, but I would suggest that they are merely supporting an original idea that does not require math to intuit.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> It's likely to be the parking lot for The Restaurant At The End Of The Universe, no?

(I can't help but wonder what Douglas Adams would make of this sort of thing - or the present time, for that matter.)

</comment><comment><USER11> I found an interesting paper on the subject over on the European southern observatory website:

[https://www.eso.org/public/archives/releases/sciencepapers/e...](https://www.eso.org/public/archives/releases/sciencepapers/eso2013/eso2013a.pdf)

</comment><comment><USER12> I've always been puzzled by the estimated age of the universe at being 13 billion years. That's just the size of the observable universe, correct? Isn't there a future horizon beyond which light will not currently reach us?

<comment><USER13> No, 13 billion years is the age of the universe. The observable universe is a sphere with a diameter of ~93 billion light years (And is likely to only be a subset of the entire universe).

<comment><USER6> I have a question: Just over 20 years ago when the accepted view was that the expansion of the universe was slowing down, would you have backed that position with as much certainty as you are backing this one? That the universe is a mere 13.7 billion years old?

We cannot prove the absence of light in a place that is already so far away that it's light will never reach us. Do you agree? We can prove what we can observe, and from that proof we can make inferences about what we cannot observe.

The entire premise of dating our universe is based on its observed rate of expansion. This was accomplished by extrapolating data from observable light and tracing it back to the so called Big Bang.

I see a lot of problems with this one dimensional assumption, which to me seem really obvious.

First of all, let's assume that we actually got it right this time and accurately traced light back to the Big Bang - how can anyone be sure that it was the first and only Big Bang?

Pangea, the super continent, for instance - many may think of as a single place and time in history, but in fact it's more likely that many Pangea's have come and gone in various states as the planet roils on. There will likely be another in the far future.

Perhaps the Big Bang was merely a "localized" event and there are Big Bangs occuring in distant places whose light will never reach us. Perhaps we have gone through many Big Bang / Big Crunch cycles. We simply cannot prove it one way or the other, and so to take a strong position on this would be unscientific.

More food for thought - imagine that the universe has already been through a near infinite number of Big Bang / Big Crunch cycles, it begs the question, do we reset the clock every time or do we let it run?

In my opinion, currently accepted theory is akin to believing that the Earth is the center of the universe and the sun revolves around us. We were wrong about that too.

<comment><USER14> > Just over 20 years ago when the accepted view was that the expansion of the > universe was slowing down

Was it ever a mainstream view? I thought it was just a conjecture, leading to the 'big crush', and was disproven long ago, way more than 2 decades ago.

> The entire premise of dating our universe is based on its observed rate of > expansion

Also there's the cosmic microwave background radiation. We have mapped it, and this has also allowed us to corroborate when the universe has formed, what temperature it had, and when large scale structures appeared.

There's probably other sources that allows us to estimate the age of the universe.

> how can anyone be sure that it was the first and only Big Bang?

We can't. But it is an irrelevant conjecture outside of philosophy, we can't observe anything _before_ the big bang.

> but in fact it's more likely that many Pangea's have come and gone in > various states as the planet roils on

Sure, but that's a planet. We can't extrapolate much from that and apply to the universe at large.

> Perhaps the Big Bang was merely a "localized" event and there are Big Bangs > occuring in distant places whose light will never reach us

Unobservable, therefore unfalsifiable, therefore unscientific. Philosophy again.

> imagine that the universe has already been through a near infinite number of > Big Bang / Big Crunch cycles

Unless the rate of expansion starts to slow down or we have indication that it will ever reverse, there's no big crunch. The rate of expansion is _increasing_

> currently accepted theory is akin to believing that the Earth is the center > of the universe and the sun revolves around us

Not really. You are dismissing generations of people dedicated to the study of these things. We have a _pretty good idea_ of what's going on based on the scientific method, not conjectures from single individuals.

There are things that we don't know yet. On a macroscopic scale, dark matter. Things don't really behave as they should based on observations, so this is why we have dark matter as a hypothesis. There could be another mechanism, research is ongoing. But as far as the macro universe goes, that's the major thing we don't understand yet.

Most discoveries will likely come from a better understanding of the 'building blocks', of which quantum physics is at the forefront.

There's probably much more we don't know yet. But the _age_ of the universe, as we observe it, is not among them.

<comment><USER15> >Unless the rate of expansion starts to slow down or we have indication that it will ever reverse, there's no big crunch. The rate of expansion is increasing

Unless space wraps around like a globe and we'll all meet at the "south pole" (with the big bang being the "north pole") or something to that effect. Which is itself wild, unfalsifiable conjecture, but there are other ways for a Big Crunch to happen other than the expansion of space slowing down or reversing

</comment></comment></comment></comment></comment><comment><USER16> >>> Like this one, it's not understood how it can exist.

I don't like that phrase. It suggests the possibility that this galaxy might not exist, that this could be observational error. I think it does exist. We understand exactly how it exists because we can observe it existing. The more accurate phrasing might be "it's not understood how it could have evolved so quickly".

<comment><USER17> > that this could be observational error

This could _absolutely_ be observation error. Messups in science happen all the time. You never take a single data point at face value without question, in any field. The spectrum might be polluted by another more distant object, the line matching might have been faked by some other intervening medium, the modelling for the lensing galaxy could be wrong. I agree, it looks good.

But it could totally be a mistake.

</comment></comment><comment><USER18> I find it funny when scientific articles (esp. pop astronomy) describe something as weird, bizarre, or extremely unlikely. We're reversing the effects of gravitational lensing on a galaxy at a distance that's a significant fraction of the radius of the observable universe.

Are astronomers that confident in their models that the inferred shape of this galaxy is bizarre? I'd love to have that level confidence in software.

<comment><USER19> That is the premise of the article. It is bizarre in relation to our models of the universe. We don't know if it is unusual in relation to the universe itself. As the article states:

>Clearly, the theoretical models are wrong, or at least (and more likely) incomplete. Obviously, there's more to learn about galaxies that exist at the edge of the observable Universe.

I am reminded of that tale about how "Eureka!" is not exclamation of good science but instead "That's odd.". This article is saying "That's odd." in a way that signals we are on the verge of new scientific discovery.

</comment></comment><comment><USER20> I wonder if any intelligent civilisation was there on that galaxy,how incredibly advanced it must be by now , assuming it has survived till now.

</comment><comment><USER21> perhaps they look less chaotic because the rays at each point of the the ring when reconstituted was not emitted at the same time, so the picture we computed is a reconstitution of a large spread of time during which movement of the stars in the galaxy blurred substantially giving the impression of a more homogenous and orderly galaxy (a chaotic galaxy at astronomical shutter times might look orderly)

</comment><comment><USER22> They had to build Milliways somewhere...

</comment><comment><USER23> First thought is that it can be a small blob galaxy in front of a bigger one.

<comment><USER24> But the odds of that happening are _astronomical_!

</comment></comment><comment><USER25> Isn't it possible that the galaxy is much younger and it actually moved faster than light?

I seem to remember reading that "islands" of spacetime could do that.

<comment><USER26> Which sci-fi author wrote that? That might make for interesting reading if you find it and share with the rest of the class.

<comment><USER25> [https://phys.org/news/2015-10-galaxies- faster.html](https://phys.org/news/2015-10-galaxies-faster.html)

<comment><USER27> That article explains that the galaxies are only moving faster than light from our perspective since every part of space between us and it is expanding.

So, no it's not moving faster than light. The space between it and everything else is expanding.

</comment></comment></comment></comment><comment><USER28> They're looking at us, wondering exactly the same thing.

</comment><comment><USER29> syfy really good science information for being a entertainment channel I wish more places would do this like the history channel.

</comment><comment><USER30> > Why is there a normal galaxy sitting at the edge of the universe?

To facilitate the restaurant?

<comment><USER31> Not that anyone cares what I say, but the Restaurant is on the other end of the universe.

<comment><USER32> Right! _This_ galaxy is there for the Big Bang Burger Bar.

</comment></comment></comment><comment><USER33> When i was a kid, we used to dream about the "ping-pong" machine of light. Basically- the light bending of the black holes allowed for images of the sky to be stored, distorted and bounced around to almost noise - of skys objects in diffrent times.. Drive it through a simulation, and you could see a nova light up, reflected back from the ping-pong machine over the aeons.. There was this nasa book, "Cycles of fire" we sat and daydreamed about..

</comment><comment><USER34> I never understand why articles like this use present tense to talk about past events. It _was_ churning out a lot of new stars.. not is.

I guess the "as seen from our current vantage point" is understood, but to me the needless emphasis of that perspective just muddies things, no?

Anyone of you downvoters care to enlighten me?

<comment><USER35> Strictly speaking our observations are not continuous. We pointed a large array at it and then the array probably went on to other work and looked elsewhere - so technically "was" is more correct, since we do not know what it "is" doing, rather only what it appeared to be doing.

Either way it's a pretty uninteresting difference in tense.

<comment><USER34> I find it a very interesting difference, because it and other fuzzy writing like it has a devastating impact on science literacy, leading to lack of comprehension of concepts. Weak thinking on science in turn contributes to many of the problems we face as societies today.

</comment></comment></comment><comment><USER36> > The thing is, where they found it is not normal: The light we see from it > left the galaxy 12.4 billion years ago, meaning we're seeing it as it was > when the Universe itself was only 1.4 billion years old!

It's not confusing at all. It's because the long-worshipped, conventional big bang theory is wrong. The universe doesn't have a beginning or end. It's eternal. The original sin of that theory is that it's tainted with forced space for a deity belief at the center and always has been. The universe cycles unevenly through phases of motion, it doesn't magically start from nothing and then 'die.' The conventional big bang theory is as bad as any other children's tale going, it's up there with Santa Claus.

We're going to find a lot more supposed abnormalities like this over time. They're not abnormalities, it's the entrenched incorrect theories that are the problem.

The universe (everything that exists) is drastically larger than we already think it is. Humans are arrogant, we didn't realize the extent of the micro world, and the same exact mistake is being made at the macro scale. What they think is a singular ~14-15 billion year old universe, is nothing more than one collection of galaxies, there are many more like it nearby (many as in trillions and trillions). The micro world was far smaller than we imagined; the macro world is far larger than we're imagining. It's the same mental mistake playing out, caused by the same arrogance. What's beyond the 'universe' that we can see so far? More massive collections of galaxies, similar to the one we inhabit that we mistakenly call the universe.

<comment><USER37> Strong claims, but can you back them up?

How do you explain the apparent accelerating expansion of the universe, i.e. that the farther away something is, the more redshifted it gets?

How do you explain the cosmic microwave background radiation enveloping us in all directions?

<comment><USER14> Of course they can't back this up.

What the universe really is, is a simulation. We are trapped in it.

"Lightspeed limit": this is because the simulation has a finite computing power. You can either move in time normally, or you can move in space. If you go to the max allowed speed, there's no processing left over to simulate time, therefore time stops for that entity. At intermediate speeds, slow down time accordingly.

"Planck length": resolution of the simulation. It's discrete, and you can't go any smaller.

"Heisenberg uncertainty principle": another simulation optimization. Instead of simulating all particles, just use a probabilistic function. You actually don't have to simulate it, just the macroscopic effects, _unless there 's an observation_. In which case you can compute either the position or speed of the particle. See also: atom orbitals

"Superluminal" expansion: it's just so we don't try to get to other galaxies, which are only being simulated in a macro scale. This was left by the developer to turn the 'lightspeed bug' into a feature. Also closes bug UNIVERSE-001 where the background radiation was still visible, but other galaxies visibility was off due to performance concerns. Now they can be enabled.

"Dark matter": other civilization experiments that we don't have permissions to see. Still there and interacting with matter. Bug is still in the backlog.

See, anyone can come up with whacky stuff.

<comment><USER38> > See, anyone can come up with whacky stuff.

Any habitual stoner could tell you that. Once your blood THC levels are high enough, the secrets of the universe will unfold before you. And it's 100% certain, because I mean, you totally observed it, Man!</comment></comment></comment></comment>


All the links to the story: Horror in Denver cinema as gunman opens fire ... - <AUTHOR> http://news.google.com/news/story?ncl=d96MLSVWBMwCa6MmD_S0EtmdwB2CM&ned=uk&topic=h <comment><AUTHOR> There have already been several links to specific web sites with this story, so I wondered if it might forestall more of them to have this link to the Google News source, which then links to them all.

Just wondering ...

</comment><comment><USER2> Just for the record, the shooting wasn't in Denver proper but rather in Aurora, a suburb to the east.</comment>


Julian Assange has been arrested by MPS - <AUTHOR> http://news.met.police.uk/news/arrest-update-sw1-365526 <comment><USER2> Discussion: [https://news.ycombinator.com/item?id=19632449](https://news.ycombinator.com/item?id=19632449)

</comment><comment><USER3> more popular thread appears to be here:

[https://news.ycombinator.com/item?id=19632449](https://news.ycombinator.com/item?id=19632449)</comment>


Show HN: Load Test Your Website or API with 600k clients at just £9/month - <AUTHOR> https://loadfocus.com <comment><USER2> Love the simple pricing, though you may want to be _even clearer_ with your plans. I used to run a a cloud based load testing service, it's a tough gig because it's hard to differentiate.

</comment><comment><USER3> Another similar tool is loader.io [1].

[1]: [https://loader.io/](https://loader.io/)

<comment><AUTHOR> that is around $100/month, this is around $14/ month and the services look similar to me.</comment></comment>


If not Scrum, then what? - <AUTHOR> https://medium.com/@ard_adam/the-nature-of-computer-programming-7526789b3af1 <comment><USER2> When waterfall was going out, and Xtreme Programming was coming in, you heard that kind of phrase a lot. If we don't have waterfall, then what? If we don't have functional requirements then what? etc etc.

This is a good article. The recommendations fall in line with JP Lewis' "Large Limits to Software Estimation".

[http://scribblethink.org/Work/kcsest.pdf](http://scribblethink.org/Work/kcsest.pdf)

[http://scribblethink.org/Work/Softestim/softestim.html](http://scribblethink.org/Work/Softestim/softestim.html)

<comment><AUTHOR> Thanks for the links to JP Lewis' article. It is excellent material.</comment></comment>


3D scan anything with a cell phone and open source software - <AUTHOR> https://sketchfab.com/blogs/community/tutorial-meshroom-for-beginners/ <comment><AUTHOR> And for people like me who don't have an Nvidia GPU, it works on Google Colab for free [https://github.com/alicevision/meshroom/wiki/Meshroom-in- Goo...](https://github.com/alicevision/meshroom/wiki/Meshroom-in-Google- Colab-\(cloud\))</comment>


Metrics engineering position code submission ideas - <AUTHOR>

Hey everybody,
Long time lurker, first time poster. I am finishing my M.S. degree in CS and looking to head into the workforce before pursuing a PhD doing mostly low-level development. My background in heavy in mathematics and statistics, and one of the positions that interest me is engineering metrics.
I would like to get some ideas on what problems to solve for a code sample directed towards this position. I plan on writing in C.
Here are some I'm thinking:
1. Implement a service that provides really fast (subsecond query time) regular expression search over the Linux kernel source code (Credit: Stripe).
2. Solution to 1D or 2D Heat Equation problem using message passing.
3. Picking a problem on Google CodeJam and solving it.
Any help, suggestions, and comments are really appreciated. <comment><USER2> (1) is probably the meatiest

(2) sounds intriguing, even though it's "just math." Care to elaborate?

(3) it's always better to pick your own problems if at all possible. makes you unique, and besides, given all the attention dolloped on "problem-solving ability", the ability to _identify_ important problems is just as important, if not perhaps more important.

<comment><AUTHOR> Thanks for the response.

1\. This would be forging new territory for me too, which could be both a good and a bad thing. 2\. This would require a message passing interface, which is not trivial to establish (i.e., they may not be able to test). This is where my skills are most refined and I would be able to defend my answer, plus, it links back to some of my work as an undergraduate (B.S. applied math, did research in numerical methods for problems like this) and shows how my graduate work has matured these core concepts, incorporating more theoretical and challenging CS. I don't know how much you know about solving partial differential equations, but a domain is discretized in time and spatial dimensions and a numerical schema called a stencil is applied as a discrete analogy to the continuous solution. This is straightforward if you are solving the problem serially, but is nontrivial in multiprocessing because depending on the stencil used a communication criterion needs to be established between the processors so that the information is at hand along the processor-domain boundaries. 3\. This is probably the most interesting point you've made and I really appreciate hearing it; you're communicating a perspective that I hadn't really thought about, and it makes a lot of sense, especially given my mathematics background.

I think I may be best to tackle 2... Let me know your thoughts.

P.S. Another area that I am trying to sell myself is as an algorithm developer / analyst. These skills can be fleshed out in multiple areas, so I don't think it helps me lean one way or the other, but it is worth noting. Ideally I find a position where I can be part of a development team with a sizable research component.

\-- Myles</comment></comment>


Kubernetes Cluster setup on CentOS 7 (bento/centos-7) – Part 2 - <AUTHOR> https://youtu.be/w_NgQ2AxExQ <comment><AUTHOR> </comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>==== Guide for installation instructions - [https://jhooq.com/15-steps-to-install-kubernetes-on-bento- ce...](https://jhooq.com/15-steps-to-install-kubernetes-on-bento-centos7/) </comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>====

This tutorial is for the ones who want to try out the Kubernetes installation on CentOS 7.

In this article, I have simplified the installation into 15 steps for installing Kubernetes on CentOS "bento/centos-7"

Prerequisites

1.Vagrant 2.2.7 or latest

2.VM VirtualBox (Oracle Virtual box)

We are going with two VMs here (Both the VMs will run on bento/CentOS 7) -

1.Master Node - 2 cpus, 2 GB Memory (Assinged IP - 184.108.40.206 ) 2.Worker Node - 1 cpu, 1 GB Memory (Assinged IP - 188.8.131.52 )

Steps brief - 1.Start your vagrant box 2.Update /etc/hosts on both nodes(master, worker) 3.Install Docker on both nodes (master, worker) 4.Disable SELinux on both nodes(master, worker) 5.Disable CentOS firewall on both nodes(master, worker) 6.Disable swapping on both nodes(master, worker) .i.e. sudo swapoff -a 7.Enable the usage of "iptables" on both nodes(master, worker) 8.Add the Kubernetes repo to rum.repos.d on both nodes(master, worker) 9\. Install Kubernetes on both nodes(master, worker) 10.Enable and Start Kubelet on both nodes(master, worker) 11.Initialize Kubernetes cluster only on the master node 12.Move kube config file to the current user (only run on master) 13.Apply CNI(container network interface) from kube-flannel.yml(only run on master) 14.Join master node run only on the worker node 15.Check the nodes status(only run on master)

References - Kubernetes.io - [https://kubernetes.io/](https://kubernetes.io/)</comment>


Show HN: The problem with .apple [remove the dot] - <AUTHOR>

Scenario: on my network I have an innocently named box called apple. It runs a web server. I can currently access it with http://apple/ and all is dandy.
Apple now owns .apple (or probably will soon).
Apple can now add an A record to the top level domain .apple.
http://apple/ where should I go? Local domains should process first so I get to my dev box. What if I want to go to apple.com [now redirects to the oh-so-easy-to-remember apple] I can't.
Case and point:
http://pn/ (does not work for all, my work proxy doesn't allow it but my phone does) <comment><AUTHOR> <http://ydal.de/a-records-on-top-level-domains/>

</comment><comment><USER2> Maybe TLDs should be resolve to a main.tld? Similar to how a browser looks for a main or index? (Or something else, I'm just tossing out an idea. Though it would give amazing use to main.com, possibly as an Internet primer. Imagine if you had one page EVERYONE saw.)

</comment><comment><USER3> I think you're out of luck, and you're going to have to rename your apple box. There's stuff you could do with DNS but if apple sends apple.com to .apple, then you're out of luck. This isn't exactly, but looks like, a domain name collision.

</comment><comment><USER4> So they're just not going to do that.

<comment><AUTHOR> Why not? I would.</comment></comment>


Perfectionism – the killer of goals. How to change your mindset? - <AUTHOR> https://wrestlerman.me/posts/dont-let-perfectionism-stop-you/ <comment><USER2> I wasted a lot of time being a perfectionist. I viewed my work as art and it had to be perfect. Later I realized it's not my work at all, it's my employers. I had also come close to burning out and I backed off quite a bit. The switch flipped.

My work is a little sloppier now. If I feel bad all I do is remind myself of the cool things I learned in my spare time. I'm better for it, and so is my collective body of work.

<comment><AUTHOR> Similar story here. I don't feel bad, though. There is just not enough time and resources to make every detail perfect. And I don't feel like overworking, because it will just burn me out in the end.

</comment></comment><comment><AUTHOR> Hi, I wrote a post about perfectionism and how to deal with it. I think that in a startup culture leaders are pretty aware of this issue as they have faced it before (when building a product). Unfortunately, when it comes to new hires, especially ones completely new to startups, they don't understand how valuable their time is and what exactly they are being paid for. Many time it's not the perfect code that matters, but half broken feature that can be pushed to users to validate their needs.

What's your opinion? How many times have you had to deal with a colleague that wanted everything to be perfect?</comment>


Show HN: Open-source quadruped robot with robotic arm - <AUTHOR> https://github.com/nicrusso7/rex-gym#robotic-arm <comment><USER2> This is the perfect opportunity to pitch my own version of this robot! Implemented in a ROS framework, with a working walking gait, and some decent documentation: [https://github.com/mike4192/spotMicro](https://github.com/mike4192/spotMicro)

I stumbled on nicrusso7's github page as I was doing my own initial research. I initially, naively, thought I could easily expand on his work and reinforcement learn my way to a working walking gait pretty quickly. However once I got a feel for the hardware and it's performance limits and the play in the system, I realized differences between the simulated model and real life would be significant, and would make debugging the translation from simulation to real life difficult. Also I'm teaching myself software development and reinforcement learning was another whole thing to learn.

So instead I took a different approach and implemented a more "conventional" gait, with inspiration and examples from other similar projects.

I've abandoned reinforcement learning for now, as I'm more interested in implementing mapping and motion planning going forward. But one day I'd like to revisit it and see how the pipeline for ML to real implementation works for something like this low level control.

<comment><AUTHOR> Well done! Btw I do agree with you regarding the knowledge transfer on the real robot platform. The open source design is built to work with very cheap servos and the alinement is not quite easy too.

As you, I was totally new to RL when I started (almost 1 year ago) - I'm a DevOps engineer during the day :) The goal of this project for me is learning ML more than build a product - that's why the limited focus on hw implementation. Anyway, there are examples on the web on how to run the policies on the real world robot (even using ROS) - maybe in the future I'll digging in this topic as well!

</comment></comment><comment><USER3> Reading the comments it struck me: why is tele operated agricultural robots not a thing? A robot with wheels and an array of cameras and arms. It rolls down the line and remote workers pick the fruit. Maybe even out of country workers being paid pennies...I'm sure the latency could be overcome. You could host thousands of humans with very few robots. Better productivity, lower cost in the long run and you're resilient against labor problems which is really good when all your labor is illegal. If nobody gives a good reason why it doesn't exist I would be receptive to people who might want to do a start up...

Googling around I find some recent stuff. It seems to have started being on people's minds in the past five years only. A lot of complicated articulated arms and inputs. I am only more convinced that there is arbitrage here... a very simple articulation mechanism, something akin to what hello robot did vs willow garage, would be totally new. And you don't have to replicate perfectly the performance of humans because it's a sliding scale, you could use the robot to downsize at first, following it with a small human team.

<comment><USER4> Depends on what you're harvesting but the challenges are likely to be in the actual picking motion not dropping/bruising/cutting the food, if there is any selection happening the senses of touch and smell are largely gone, navigating the plant without damaging it, not compacting the soil around the roots more than necessary, overall speed, etc.

Bespoke harvesters for things like potatoes and almonds obviously destroy humans in the productivity department. If we're still picking it that's a good signal that automation will be tricky.

We probably have the technology to do most of it now, but you may wind up with a half million dollar robot.

</comment></comment><comment><USER5> I have been fantasizing about a similar setup for some time, but an arachnid instead of a quadrupod. I imagined it to pick up trash in land with a lot of vegetation. Never got around it because I am on my own personal project and this sounds like a massive amount of work for a single person. Congrats and good luck. Will bookmark it so I can get back to it when I am freer. Sounds like a very good starting point for this topic.

One thing, why use a machine learning algorithm for path finding in the maze instead of just using an actual path finding algo? Did I miss something?

<comment><AUTHOR> thank you very much! any feedback is welcome!

Re the maze, I've got just the terrain so far - I'm working on the gym environment.. I was thinking to write 2 different versions of it, one in which the robot has a map of the maze and navigate it using a path finding algo (probably A*) and another version without any map (I'll probably need a lidar for this).

<comment><USER5> Some time ago I tried to use rt-rrt[1]. It should be quite suited for your setup, or at least more than A* i think. Actually when I get back to your project I will try to implement it inside your framework.

[1] [https://github.com/ptsneves/rt-rrt](https://github.com/ptsneves/rt-rrt)

<comment><AUTHOR> Awesome! Any PR is welcome. In the meanwhile I'll have a look at your rt-rrt implementation.

</comment></comment></comment></comment><comment><USER6> I've been looking for an open source robovac for ages. This will definitely do.

(Obviously this isn't very serious. I do however think this project is great)

<comment><AUTHOR> Oh well I can definitely add a vac-env on my todo list :D

</comment></comment><comment><USER7> This looks very cool! I wonder how close it is to the method that Boston Dynamics uses to control the their version. Did they simply train a machine learning algorithm for way longer than a hobbyist can or is there a ton of manual tweaking?

<comment> gene-h Boston Dynamics probably does some form of force control. That is controlling the force applied to the ground by the legs in addition to just the position the leg is moving. The actuators here appear to be purely position controlled.

<comment><AUTHOR> yeah the current motor model takes the desired position as input and convert it to torque (applying some 'noise' trying mimic the real motors).</comment></comment></comment>


Google Chrome's Developer Tools Improve - <AUTHOR> http://blog.chromium.org/2010/06/google-chromes-developer-tools-improve.html

<comment><USER2> I love the second comment on the post. I can't imagine a tenth of what Google has to deal with every day.

<comment><USER3> Google seems to have an internal myth that all customers are "that guy" and that therefore the only solution to customer support is /dev/null.

</comment></comment><comment><USER4> I hoping for this just last night, when I was happily debugging in Chrome but had to switch to Safari for it's richer debugging tools.

The most interesting thing to me about Google at the moment is their pace, hopefully they can maintain it.

<comment><USER5> Wasn't long ago that Chrome was announced and bare bones. And now it has many if not all the features of the competitors, without the baggage.

</comment></comment><comment><USER6> Are these improvements added via Chrome or are they improvements to the WebKit Inspector?

<comment><USER7> The majority of these features have already existed in the upstream WebKit Inspector for several years, but because they ripped out the original javascript implementation to replace with V8, the Chrome people couldn't use any of it.

</comment></comment><comment><USER8> What would be great is the ability to edit javascript and then save the edited file somewhere. Otherwise I can see alot of copy and paste in my future!

</comment><comment><USER9> Does anyone here know why the scrolling speed in osx is not as smooth as safari?

</comment><comment><USER10> The ability to edit the JavaScript will go a long way to make debugging easier.</comment>