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

My physical ios device test harness has no pin numbers/touch id activated for any of the connected phones. I noticed early on in testing that it would require physical access to reinput the pin code even when the device was already unlocked when I would restart an XCUI test.

If you're able to have fully unlocked devices at your test setup I'd suggest giving that a shot to see if it fixes your issue around device restart.


Spice Data (YC S19) | Software Engineer / Sr Software Engineer | On Site San Francisco, CA

We license data to leading Fortune 500 restaurants. Data is the new oil, it serves as a vital input into the ML and data analytics pipelines that direct company strategies. Companies with a firm understanding of their internal data necessarily want to expand their understanding of their market with external datasets, that's where Spice Data comes in.

We're a small and nimble engineering team with lots of back end work that we could use some help with. We cover both sourcing (web crawling), cleaning, and formatting of large (150M+ data points a month) datasets. We'd love to talk with you if you have experience with either building/maintaining data pipelines or working on web crawling/scraping. Familiarity with unix like systems is essential as a lot of our tooling is terminal based.

Tech stack: Python, Linux, PostgreSQL, Dagster

Benefits

- Lunch provided when in office

- Unlimited PTO

- 401k

- Company paid Platinum PPO health and comparable dental & vision insurance

- Salary $100k-150k Software Engineer, $160-220k Sr Software Engineer

- Competitive equity (0.25-3% depending on position/salary)

Software Engineer: https://www.ycombinator.com/companies/spice-data/jobs/TijA35...

Sr Software Engineer: https://www.ycombinator.com/companies/spice-data/jobs/f6Bueh...


Not a practitioner, just a startup cofounder affected by these changes.. not legal or tax advice. You can read the applicable text here:

https://www.law.cornell.edu/uscode/text/26/174

Section 174(c)(3)

``` (3) Software development

For purposes of this section, any amount paid or incurred in connection with the development of any software shall be treated as a research or experimental expenditure.

```

That being said... it's complicated: https://www.thomsonreuters.com/en-us/posts/tax-and-accountin...

We've heard a mix of advice from various tax professionals on what should be classified as R&D or not. The messaging gets expecially mixed since the R&D tax credit is often handled by a 3rd party that specializes in it. The company specializing in the tax credit may be incentivized to classify as much of your activity as R&D as they can, since they are usually paid a percentage of the total credits they are able to claim for your company.

It certainly complicates running a software company. My cofounder and I need to look at the amortization schedule before making any engineering hire as we basically need to consider their salary nearly 100% R&D. I imagine it's even more complicated for founders with overseas teams.

It would certainly be easier for us to do business if Section 174 was revised :)


Super post, thank you.

As to software “development,” when you finish your software and publish it and get customer installs, then what happens? More software development? Or is ongoing operation/bug fixes still R&D under (c)(3)? I think your average software person has a strong belief about the answer to this question but having read some of the code&reg in the area, I share your opinion that this section needs more detail.


Pretty sure any updates to the software count as additional R&D. Just running software you've already created doesn't count though. Something interesting we were asked was how much of our cloud costs involved developing software vs running existing software to determine if those costs must also be amortized over 5 years.


Does 174 apply to SBIR money?


It really depends on what you do / discover with the SBIR grant

See e.g. https://www.jamesoncpa.com/learning-center/irs-finally-issue...

Caveat, I've been out of the small lab SBIR world for 13-14 years


Not who you responded to, but I worked in college radio for a while. Depending on what CDs they were listening to, generally the label will highlight which tracks are standouts and that you should listen to. Usually it would be 3 or 4 tracks max (generally track 1, 3 and 4 though there are exceptions).

Most tracks are 3 minutes long.. so given an average of lets say 3 songs a cd at 3 minutes each... 100 x 3 x 3 / 60 == 15 hours of listening (hand wavey no time to change cd and stuff...). So yeah probably pushing the limits of reasonable but not quite as crazy as you might think.

Also, although it was unfair to the artist, I would usually make up my mind on pop songs by the end of the first chorus. If I'm not hooked within 1 minute it's probably not going to play on my show. It was brain numbing work, and frankly made me view music as a chore for a few years afterwards... but you can listen to quite a few tracks this way and try and find the few gems amongst the chaff so to speak.


I've been considering buying a Mac specifically for LLMs, and I've come across a lot of info/misinfo on the topic of bandwidth. I see you are talking about M2 bandwidth issues that you read about on linkedin, so I wanted to expand upon that in case there is any confusion on your part or someone else who is following this comment chain.

M2 Ultra at 800 GB/s is for the mac studio only. So it's not quite apples to apples when comparing against the M3 which is currently only offered for macbooks.

M2 Max has bandwidth at 400 GB/s. This is a better comparison to the current M3 macbook line. I believe it tops out at 96GB of memory.

M3 Max has a bandwidth of either 300 GB/s or 400 GB/s depending on the cpu/gpu you choose. There is a lower line cpu/gpu w/ a max memory size of 96GB, this has a bandwidth of 300 GB/s. There is a top of the line cpu/gpu with a max memory size of 128GB, this has the same bandwidth as the previous M2 chip at 400 GB/s.

The different bandwidths depending on the M3 max configuration chosen has led to a lot of confusion on this topic, and some criticism for the complexity of trade offs for the most recent generation of macbook (number of efficiency/performance cores being another source of criticism).

Sorry if this was already clear to you, just thought it might be helpful to you or others reading the thread who have had similar questions :)


Worth noting that when AnandTech did their initial M1 Max review, they never were able to achieve full 400GB/s memory bandwidth saturation, the max they saw when engaging all CPU/GPU cores was 243GB/s - https://www.anandtech.com/show/17024/apple-m1-max-performanc....

I have not seen the equivalent comparisons with M[2-3] Max.


Interesting! There are anecdotal reports here and there on local llama about real world performance, but yeah I'm just reporting what Apple advertises for those devices on their spec sheet


All this sounds right!

If money is no object, and you don't need a laptop, and you want a suggestion, then I'd say the M2 Ultra / Studio is the way to go. If money is still no object and you need a laptop, M3 with maxed RAM.

I have a 300GB/s M3 and a 400 GB/s M1 with more RAM, and generally the LLM difference is minimal; the extra RAM is helpful though.

If you want to try some stuff out, and don't anticipate running an LLM more than 10 hours a week, lambda labs or together.ai will save you a lot of money. :)


The tech geek in me really wants to get a studio with an M2 ultra just for the cool factor, but yeah I think cost effectiveness wise it makes more sense to rent something in the cloud for now.

Things are moving so quickly with local llms too it's hard to say what the ideal hardware setup will be 6 months from now, so locking into a platform might not be the best idea.


I found this discussion on the local llama subreddit that digs a little bit more into what effects the sliding window might have, in case you or anyone else reading this comment thread finds it interesting: https://old.reddit.com/r/LocalLLaMA/comments/17k2mwq/i_dont_....

It refers to the original Mistral 7B though not the new Mixtral fwiw


Anecdata, but I suspect my current issues with charging my iphone are due to wear on the charging port from using the lightning -> headphone adapter. When looking for a new phone I noticed that many sony phones still provide headphone jacks on their higher end models (xperia 5v, 10v) but generally it seems relegated to cheaper android phones.

I hate the waste generated from having battery powered headphones, and generally dislike the batterification of so many products these days. Wires can be messy but they are usually replaceable and I don't have to worry about properly disposing of them as much as I would for an item with a LiON battery.

IIRC the xperia phones are just as water/dustproof as the pixels/iphones so not really sure why we had to give up the port other than for maybe a mm of thinness and a reason to sell a new series of audio devices to consumers.


I used Xperia phones for years. However I gave up as if it doesn't come from t-mobile it didn't support all the towers (tmobile uses some weird frequencies in the US) and I'd end up in dead zones all over. Great phones, but too much friction to keep using them.


I almost bought one recently because they are literally the only new phone model that has both of: a headphone jack and no camera cutout. Unfortunately, it seemed like support on google fi was hacky and partial at best (and it wasn't 100% clear you could get it to work at all).

I ended up going with the pixel 4, which was the newest phone I could fine that at least didn't have a camera cutout.

I have since discovered that in android developer options, you can choose to give up the screen real estate around teh cutout to effectively hide it. Given this, in the future, I'll look for phones that have a jack, worrying less about the cutout.

If the Fairphone ever comes to the US with full support, I would strongly consider it, even though I _really_ want a headphone jack. I think that for a fully repairable phone, I might be willing to trade.

It appears like my ideal phone is probably never going to exist again, so I'm going to have to compromise on something.


I wish it was easier to parse/compare the supported cell frequencies list from phone/gsm arena. Especially for devices more targeted at non US markets you can end up missing a lot of useful frequencies. I guess part of the issue is how non standard the US cell networks tend to be (iirc our 5g is also a little weird compared to the rest of the world)

It's one of the things I feel like iPhone does right supporting most frequencies even for US models. The new mandatory eSIM on it makes it a no-go for me though when I travel to Europe and want to buy a SIM card at the airport/corner store.


I.really want a works anywhere in the world phone that supports them all. I.travel once in a while and I want my phone to work (and reasonable roaming in every country)


The syntax has a bit of a learning curve, but there's a library called glom that can be helpful in parsing heterogeneous JSON. Specifically it has a coalesce operator that let's you define multiple paths to get the data you are trying to get at, with a default value if none of the paths are valid.

https://glom.readthedocs.io/en/latest/api.html#defaults-with...

e.g.

    target = [{"a": {"b": "c"}}, {"a": {"c": "e"}}, {"a": {}}]
    results = glom(target, [Coalesce("a.b", "a.c", default="")]) # -> ["c", "e", ""]


There have been some efforts to utilize the type hints to give performance boosts. There's a project called mypyc that apparently has been used by black (python formatting library) that will compile type hinted python into c extensions. Unfortunately I think development has stalled, but as more people start using type hints I think there will be more motivation for similar projects.


Really great techniques listed in this thread! I wanted to point out though that it's generally nicer to the website owner if you enable `Accept-Encoding: gzip, deflate`. The difference in the amount of bandwidth charges for the site owner is quite significant, especially should you want to do comprehensive crawls.

Yes, go ahead and disable that header when piping curl's output into `less`, however when converting the curl request into python just remember to re-add that header. Pretty much every python library I've used to handle web requests will automatically unzip the response from the server so you don't need to futz about with the zipping/unzipping logic yourself.


Your HTTP client library is likely to set that by itself to a value it can understand. Setting it manually risks setting it to something your library can’t actually decode when it gets the response.


No, some HTTP clients actually require you to set it - you wouldn't set the header directly, sure, but you would enable gzip/etc. Their point is super valid.


There have been some very popular websites that ignore Accept-Encoding and only send compressed data. Sometimes I want uncompressed responses. I always have the urge to complain about these websites on HN but I sense that HN commenters/voters would be unsympathetic. (I do not use curl nor python.)


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

Search: