HN user

darshan

911 karma

I do computery things as Darshan Computing, LLC:

http://github.com/darshan-

http://stackoverflow.com/users/1427098/darshan-computing

Posts59
Comments109
View on HN
www.swapadoodle.com 6y ago

Show HN: Swap-a-Doodle, a cross-platform social drawing app

darshan
11pts14
www.phoronix.com 7y ago

Torvalds Unhappy about STIBP Performance Hit – Default Will End Up Changing

darshan
2pts0
www.phoronix.com 7y ago

The Unfortunate Reason Linux 4.20 Is Running Slower

darshan
7pts0
www.youtube.com 7y ago

AT&T Archives: The Unix Operating System [video]

darshan
1pts0
stackoverflow.com 8y ago

Stack Overflow Developer Survey 2018

darshan
4pts1
blog.llvm.org 8y ago

Clang is now used to build Chrome for Windows

darshan
1pts0
www.blog.google 8y ago

Google Pay – Say hello to a better way to pay, by Google

darshan
4pts0
ncase.me 9y ago

Parable of the Polygons – a playable post on the shape of society

darshan
3pts0
medium.com 10y ago

Billions of request per day meet Go 1.5

darshan
12pts1
phys.org 10y ago

Evidence suggests subatomic particles could defy the standard model

darshan
2pts0
arstechnica.com 11y ago

AMD admits it can’t be “the cheaper solution,” will refocus on performance

darshan
3pts0
blog.takipi.com 11y ago

The Dark Side of Lambda Expressions in Java 8

darshan
3pts0
sherylcanter.com 13y ago

Chemistry of Cast Iron Seasoning: A Science-Based How-To

darshan
3pts0
docs.google.com 13y ago

Go 1.1 Function Calls

darshan
3pts0
developer.android.com 13y ago

Android 4.2 APIs

darshan
3pts0
www.groklaw.net 13y ago

ITC Administrative Law Judge Rejects Apple's FRAND Arguments Against Samsung

darshan
10pts0
www.groklaw.net 13y ago

Oracle Must Pay Google $1,130,350 in Costs

darshan
135pts36
en.wikipedia.org 14y ago

Wikipedia on SOPA: We're not done yet

darshan
3pts0
www.google.com 14y ago

Weird Google Search suggestion

darshan
3pts0
wwws.whitehouse.gov 14y ago

Petition: Implement a fair voting system

darshan
1pts0
mediadecoder.blogs.nytimes.com 14y ago

Google Music is possibly, finally, almost here

darshan
3pts0
www.nytimes.com 14y ago

How to Fix Our Math Education

darshan
5pts1
www.businesswire.com 14y ago

Adobe Enables 3D Games With Flash Player 11, AIR 3

darshan
1pts0
blogs.adobe.com 14y ago

Announcing Flash Player 11 and AIR 3

darshan
1pts0
blogs.nvidia.com 14y ago

Quad-core Kal-El’s Stealth Fifth Core Lets it Save on Energy

darshan
47pts8
android-developers.blogspot.com 14y ago

Preparing your Honeycomb app for Ice Cream Sandwich handsets

darshan
19pts3
www.bloomberg.com 14y ago

Google Buys 1023 IBM Patents for Android Defense

darshan
17pts4
www.pathf.com 15y ago

Static Typing and the Paranoid Style of Programming

darshan
4pts1
esr.ibiblio.org 15y ago

The smartphone wars: Fortune catches up with me

darshan
1pts0
blogs.discovermagazine.com 15y ago

15-minute writing exercise closes the gender gap in university-level physics

darshan
81pts63
Claude Opus 4.7 3 months ago

Have you tried and failed, or you're just worried it might be hard? When I first set up a client for API calls, I put this paragraph in my system prompt:

Never ask questions or attempt to keep the conversation going -- answer the questions directly asked, and give additional information where it is likely to be helpful, but don't offer to do more things for the user.

I've never had an LLM offer to do things or try to keep the conversation going with this in my prompt.

Witeboard 6 years ago

It seems at least mostly on topic to share here this thing I released a little over a year ago: https://www.swapadoodle.com

It's definitely not useful for the same things, but it has a lot of similarities and seems potentially interesting as something to compare and contrast with this.

Firefox Replay 7 years ago

Mods: the link should perhaps be changed to: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/We...

This currently has 1215 points, and the link is no longer valid. It now just shows an image of Firefox's devtools and the sentence "Replay is an early experiment. We'll let you know on @FirefoxDevTools when it's ready for input." That's not useful, interesting, or informative. The MDN docs seem like an appropriate replacement.

I'd agree with you if it were just the first message. But they then explained exactly what they meant and why, and that's what I offered them feedback on.

They apologized to the person they said it to, and it all seems settled from my perspective.

Telling someone "this isn't interesting to you" in place of "I don't want to talk about it" is definitely not polite!

I'd say it's rude in general to tell someone they won't find something interesting, and especially so when it's done as a way of disowning your own preference not to talk about it.

I don't know if I'm having one of my hyper-literal moments, or if this is some other neurodiversity thing, but I can't make sense of the last paragraph... Can someone help explain it to me?

The way I read it is:

* 219-09-9999 is a made-up number that was never issued to anyone.

* The woman thought it was her number for unexplained reasons.

* She used the pamphlet as evidence that it was her number.

I must be missing something important. Is it a joke, with the punchline being that she thought the pamphlet was her social security card? If so, how was this the fault of the Board? Was it her SSN somehow? If so, how did the pamphlet prove it?

Were you using it in a browser? If you just use "Forward" in the browser, you'll go back (that is, forward) to the doodle you created, if you accidentally back out of it. In the native apps you can't go "forward" again, but if you have a (free) account, all your created doodles are in your "Doodles" folder.

Or am I picking up on confusion about my general model (which I'm certainly open to feedback about). If you draw and don't share, but press back or try to leave the page, you're prompted about destructively leaving. Sharing creates the doodle and makes a link for you to share (or bookmark, or whatever you like), so the contents aren't considered wiped at that point; they're considered successfully sent.

Please let me know if I'm failing to understand what isn't working as you expect, of if you think my model is confusing to new users. Thanks!

Thanks! Yeah, I occasionally considered not including undos and redos, but there's so much positive value that easily outweighs the occasional negatives. Just a couple of the things I love about including them:

1) Much of the general idea is a sense of connection and intimacy -- it's not just the final product that you're sharing, but the process. When you see the mistakes, or the attempts to get something just right, it's a moment of connecting with the sender's experience while making it.

2) You can make emotionally evocative doodles by removing elements, so they're only present fleetingly but not present in the final image. (Examples of this are by friends I haven't thought to ask permission to share. But think: drawing a small plant, then undoing and drawing a bigger one, for several iterations, for example. You can sometimes do that by "erasing" the part you want to remove by drawing the background color, but if you want to remove something that's on top of something else, undoing is so much easier.)

When I first started making the app, Dart existed, but Flutter didn't. Then Flutter existed, but didn't support the web. I thought that was still true, but I just checked, and Flutter for web [https://flutter.dev/web] does now exist, as a technical preview ("When trying Flutter for web, you can expect to experience crashes and missing features.")

When Flutter came out, I looked into it, wondering if it might be worth switching my approach (I figured most of the Dart code would probably be able to stay the same). There were other deal breakers at the time, but I don't recall them.

Maybe once Flutter for web is production ready, it would make a compelling alternative, but for now it isn't an option. I'm not sure if would have made things harder or easier. But I'll be curious to check it out.

Nope, that's not accurate at all. The native apps support push notifications, in-app payments, native UI elements, proper lifecycle management (storing in-progress doodles across the app being killed in the background, or the device being restarted, for example), and more offline support than would be possible with the website. Among other things.

The things that are in the native wrappers are things that would be iOS-specific or Android-specific regardless of zero shared code or maximum shared code. In my case, the bulk of the app is shared -- everything that can be a common code base is a common code base.

According to GitHub's rough metrics, that's: Go 44.7% Dart 32.8% Java 7.1% JavaScript 6.9% Swift 6.6%

I just launched (like, an hour ago: https://news.ycombinator.com/item?id=20700196) a cross-platform app that is almost all shared code. In my case, the solution is a web app with very lightweight native wrappers, and I'm quite happy with it. Obviously that wouldn't be the perfect fit for all apps, but none of Dropbox's "(not so) hidden costs" are relevant in my case, and I suspect many apps would be a good fit for the architecture I went with.

Hi, all. OP / owner / founder here.

I’m finally launching a product that’s taken me years longer than I’d anticipated to complete. It’s a much bigger project than anything I’ve done before. My first app was the first battery indicator on Android, back in 2009, which was very successful by my standards (I didn’t have a college degree at the time and made way more money from it than I’d ever made from a job.) I also have a free instrument tuner on the Play Store.

Swap-a-Doodle aims much higher, and was quite an undertaking for me. It’s a cross-platform app (Android, iOS, and the web) for social drawing. I knew nothing about computer graphics when I started out, and just a bit about web programming. I learned so much along the way. I’m sure I’ll learn a lot more as the app grows.

The front end is written in Dart. The back end is written in Go and runs on App Engine, with Compute Engine for the websocket servers for live drawing (sharing a canvas with a friend to draw together at the same time). The Android and iOS apps are fairly small wrappers around the web app.

Feel free to ask questions. I’m of course open to feedback, or I wouldn’t post here — but I do feel somewhat vulnerable in this surreal moment of finally launching, so please keep that in mind and try to be kind if you do have criticism, and maybe frame it as “something that could be even better,” if that’s not too much of an ask. Thanks!

I've used Direct Labs multiple times over the years (including for 25 hydroxy) and I've always been perfectly happy with them.

https://play.google.com/store/apps/details?id=com.darshancom...

When Android was pretty new, I got the myTouch (the second public Android device) and was surprised that there was no way to easily see the exact battery level. I'd been a hobbyist programmer for quite some time, and it seemed like a problem I might be able to tackle. The result was Android's first battery indicator app, which remains by far the most-used piece of software I've ever built, with over 8 million downloads.

That is strange! I'm also on a stock 5.1.1 Nexus 6, but in the U.S. I guess you can at least be happy that this appears to be a bug (which means hopefully it will be fixed soon) as opposed to a bad design decision.

I have build 1.0.0.94391081, and I get the trash icon both when looking at individual photos and when selecting one or more photos. Which build do you have? (And which device?)

I'm interpreting the suggestion to mean that the original default with Go 1.0 should have been 2, because that is the lowest value (and thus would have the least of the the performance problems documented here) that would, as you say, reveal the same bugs. That way raising it to runtime.NumCPU wouldn't be a potentially breaking change.

Personally, I've found the issue to be documented well enough, and it is easy enough to set GOMAXPROCS to whatever works best for a given program, that I'm content with how the team has handled it. And I'm thrilled at the work that is being done now to fix the issue once and for all.

That's intentional. Lollipop no longer has silent mode; instead it has "no interruptions" mode, which considers the LED indicator an interruption. I suspect there are third-party apps that can do a pseudo-silent mode that may work for you.

I'm pretty sure I mouse as quickly as anybody. It's just that the difference between 17 ms per frame and 33 ms per frame on my system only affects the smoothness of animations. There's no perceptible lag no matter how quickly I move things around.

That is completely different from my experience; I think you must have another problem besides the 30 fps frame rate. Perhaps your machine is just having trouble pushing that many pixels? On my machine, animations are just slightly, subtly choppy -- like Android used to be before all the "butter." But there's still very much the sense of instant responsiveness.

I'm pretty sure I came across information that up-to-date Macs can do all the necessary wrangling to make it work. If I planned to buy one and connect it to a Mac, I'd do some Googling to verify that, though.