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

Looks like github lost two weeks of its public activity data.


Github was good while it lasted. Back to SourceForge.


Then if SF goes down we'll go back to emails & patches. Issues will be tracked with post-its & todo lists and communicated by voice.


I really wish we could get the community effects of github without github and have everyone self-hosting repos or even a fully distributed solution on top of something like IPFS.


I am sorely tempted to just start tracking issues as YML or CSV + markdown files in an issues directory. That gets me all kinds of features that GH doesn't provide:

- offline issue management (bugs on a plane)

- issues associated with branches

- grep, awk, ack, sed

- all of the above, available to git hook scripts

The only thing he holding me back, is that I really want to get this right. This needs to become a standard, not "Dan's weird repo that no one understands".



Let's just get rid of the darn computers already.


I gave up and started posting to usenet.


Young blood here. Can we go further?


There's only so far tin can and string will go.


19 minutes and twelve pop-under ads later... I can't commit my changes until I punch the monkey and learn one weird trick to make my teeth whiter. Ah, the good old days.


The Node.JS project has a problem in that it has never had a specification - only a defacto implementation based on an ever-changing V8 engine with whatever ECMAScript compliance that V8 had at the time. Recently Google made big changes to the V8 API that broke Node Buffer in a rather large way and the Node devs had to do handsprings to put together a less than optimal workaround to get it working with V8 ArrayBuffer. Node.JS is at the mercy of Google's V8 engine which is designed first and foremost for Chrome.

ChakraCore did the impossible in that they've mimicked the V8 C++ API to make it appear to Node as V8. But this trick will only work for so long as Google continues to change its engine.

It would be better for Node long term to have a JS engine independent C ABI. But the core developers of the Node project are resisting this idea as they believe Node is V8 only. I don't think that Node will ever officially merge Chakra. They just want it to go away.


> He seems uninterested in even acknowledging the point that most cameras don't look like that anymore

Digital SLR cameras still very much look like traditional cameras. Why? because the form is optimal for the task at hand - taking high quality pictures.


I'm 100% in agreement with the article. I haven't upgraded from Mavericks for the very reasons he outlined - stark white UIs with no feedback. (Well that and the WIFI issues in Yosemite.)

As for skeuomorphism, look no further than the phone icon in iOS - it's a handset from a traditional 80s phone. If Apple designers were to take their flat minimalist mantra to the next level the icon would be a picture of a black rectangle representing an iPhone.


Impressive work by this fellow John McCarthy. I can't seem to find his github page though.


There's this other bloke who goes by the handle ’Turing’ who keeps yabbering on and on about what programmers can't make a computer do but he doesn't even have a CS degree, so avoid him and don't feed the troll. ;)



vouched for this dead link (even if it looks like it missed the joke it's more useful than the joke was)


    logger.info("...");
versus:

    EventHandle eh = EBus.getHandle(
        eventBuilder.executing().name("some operation").build());
    if (eh.isAllowed()) {
        eh.addParam("p1","v1").addParam("p2","v2").post();
    }
That's a lot of typing.

It needs a more compact API.


Yes, that's pretty full of boilerplate, even for Java, which is notoriously boilerplate.

There are more established event buses in Android with simpler syntax, like greenrobot's: EventBus.getInstance().post(new LogEvent("v1", "v2"));

Seen here: http://greenrobot.org/eventbus/documentation/how-to-get-star...

You can have multiple event buses and other customization there as needed, but you have sensible defaults to keep code small most of the time too.

Square also has one called Otto. If you want a lot of syntax and Java rather than Android, you might as well go full streaming with the RxJava library.


I think Otto is a fork, and simply an enhanced implementation of Guava's built-in EventBus


meanwhile Otto has become deprecated and the authors suggest going with RxAndroid


With event framework,we should use little helper function to wrap each event type,at least that's what I have seen.Windows event tracing(ETW) comes to mind,one of the complex api written[1].I always thought that every application should make use of ETW infrastrucutre. Compared to perf_events or may be lttng in linux(I am not sure how difficult to integrate to perf_events).Currently there are good and easy framework for ETW in .net [2]. But once you integrate your app,your app suddenly gains performance tuning,debugging capability easily. I think this should hold true for any event framework!!

[1]https://mollyrocket.com/casey/stream_0029.html [2]https://www.nuget.org/packages/Microsoft.Diagnostics.Tracing...


Well, to be really fair compare it with :

  if(logger.isDebugEnabled()){
        logger.debug("...");
  }
And yeah, it requires a bit more typting if you want to enforce a certain event format and want to add more parameters. But you only do that once, and I'd say you gain much more for your effort.


Fyi, intended usage with most Java loggers is to just call

    logger.debug("...");
and ignore the conditional. If `!logger.isDebugEnabled` then the logger will ignore the message, so it avoids boilerplate.


You want to wrap it in an if in order to avoid doing extra work ( like string concatenation or whatever ) and save some computation. It's to improve performance when logging is not enabled.


No good if you're computing the message somehow. e.g.

    logger.debug(generateSomethingLarge());


Generally you would log with placeholders, like

    logger.debug("My logger message has placeholders {}, {}, {}", some, objects, toLog);
which avoids the issue.


Still learning things about GNU make after 20 years. Great software.


Don't forget his babel replacement, buble:

https://gitlab.com/Rich-Harris/buble

Zero config, small and fast as heck.


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

Search: