Hacker Newsnew | past | comments | ask | show | jobs | submit | minork's commentslogin

If you have not been in war for 200+ years, you can focus on real serious things...


Well, in a way, the fact that this is a problem in 2018 really shows how good our lives are, that we can focus on that kind of ridiculous non-issue.



I think most of the "shit" in this article comes from Angular. The asp.net part is pretty lean.


I think the commenter meant ASP.NET WebForms, which is pretty awful.


It tried to make web dev look like Winform devs, which Winform devs liked. It's no different from JSF and all that stuff and make sense in the enterprise context. If you are writing APIs, then no it doesn't. Ironically ASP.NET MVC is kind a going back to XML like declarative syntax, because it's actually useful. And Angular 2 is close to JSF/Webforms in spirit... the irony, things that looked obnoxious to JS hipsters and now hip again ...


Yeah for sure. Angular2 is like RAD development in Delphi all over again. Controls connected to DataSources connected to ClientDataSets ...


Someone mistook Mr. Crockford for Brendan Eich and fired away some tweets.


Would it have been okay if it were Eich?


In the U.S., anyone "guilty" must be driven into the ground for the rest of their life, having forfeited everything.


No, it wouldn't.



I didn't ask about his politics.


I don't know. You tell me? At least there is something in the public history about Eich that could offend someone. But to accuse someone in public of something and not be public about what, naaa, that's not ok.


So it's purely a transparency issue?


Yes, when someone's reputation is being publicly tarnished, it would help if the accusers provided some evidence.


Yes.


I'm probably missing your point, but

  public static IList<Ephraimite> FindEphraimitesToKill(IList<Ephraimite> ephraimites)
  {
      var ephraimitesToKill = new List<Ephraimite>();
      foreach (var ephraimite in ephraimites)         
          if (ephraimite.Speak("shibboleth") == "sibboleth")            
              ephraimitesToKill.Add(ephraimite);                    
      return ephraimitesToKill;
  }
or:

  public static IList<Ephraimite> FindEphraimitesToKill(IList<Ephraimite> ephraimites)
  {
      return ephraimites.Where(e => e.Speak("shibboleth") == "sibboleth").ToList()
  }
is not that verbose.


The thing is, though, would those be allowed by style guides at the enterprise companies where C# is most common?

The C# style guide of a former employer of mine (an enterprise C# user) forbids both of these snippets because of the unbraced statements in the former and the LINQ and lambdas in the latter. But admittedly I don't know what's common among C# users, so maybe they were in the minority.


5-6 years ago enterprise guidelines preventing LINQ/lambda's were more common. Current C# practices for enterprise companies(familiar with 6+ fortune 500's, have not seen or heard of them being banned in the last 4 years) definitely allow lambdas and LINQ.

The "required brackets" is more common but I think it's a good rule :). Readability is only slightly hindered by the extra brackets, but I've seen quite a few errors from

if(shibboleth)

    DoSomething();

    DoSomethingElse();


The brackets, maybe. Preferences for brackets for single lines vary. I personally don't like them, but many code style guides (including MS's) recommend them.

The LINQ version should be allowed almost everywhere that has a good development group. Sometimes LINQ queries can get hairier than the equivalent foreach, but I've never worked anywhere that would frown upon the shorter/cleaner LINQ.


I think its strange comparing languages and then saying that the point doesn't stand because code guidelines of companies don't support the more compact version.

I don't like the version without brackets, but I don't think it would make the code less compact if you'd add brackets.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: