Hacker News new | past | comments | ask | show | jobs | submit | thedjinn's comments login

How many images does your app typically need to avoid overfitting?


The number of images depends on several factors like the total number of objects, the variation of images, visually difference between objects, etc.

We have developed some proprietary technology to reduce the amount of images needed. In general each object should have 10-100 images to avoid overfit.


Most people probably don't even refer to the macOS versions by number but by codename.


Sure, but version names are hard to order: was Catalina before or after X? who will remember? (maybe if it at least was like Ubuntu with names following alphabetic order)


Nit: Big Sur is a marketing name, not a codename. Apple has their own names for this things ;)


I'm on a 2012 MBP with similar experiences. Every year I think about finally replacing it, but hold off on it because everything still works fine apart from some increased fan noise and reduced battery capacity (which doesn't concern me too much). If you treat your laptop with care it really does last a long time.

At some point I expect I will stop getting MacOS updates which will force me to upgrade to a newer model.


I’m still running my 2010 MBP (it was worth maxing out the config, and I've replaced the optical drive with an SSD), though recently I bought a 2009 Mac Pro for my main machine. The MBP has fallen several feet into a concrete shop floor with only a squished corner in that milled aluminum case, and is on its third or fourth battery (I should stop cheaping out). I did splurge a few years ago on a replacement keyboard when the original's PCB traces started corroding. That's one of the first parts they integrated to the detriment of its repairability.

With a tweak I was able to get Mojave on it, and another tweak to get Xcode to compile for iOS 13 on it. That should do me for a while, until either the video cable exposed through a hinge breaks, or they can’t get the latest iOS to compile on it. But I’m loathe to get a machine that won’t let me keep it alive the next 10 years.

Intel CPUs haven’t advanced that much since this machine's 2.66x4 i7. The video probably hurts more. It points to a future where we can just expect to put some money into maintaining our computing machinery instead of consuming it like it's a service. But given that John Deere has moved this way, I’m not hopeful that computers will go back that way. Support right-to-repair bills!


> I’m still running my 2010 MBP (it was worth maxing out the config, and I've replaced the optical drive with an SSD), though recently I bought a 2009 Mac Pro for my main machine. The MBP has fallen several feet into a concrete shop floor with only a squished corner in that milled aluminum case, and is on its third or fourth battery (I should stop cheaping out). I did splurge a few years ago on a replacement keyboard when the original's PCB traces started corroding. That's one of the first parts they integrated to the detriment of its repairability.

Exact same story here. I finally bought a Lenovo last fall after giving up hope that Apple would make a machine I could also get 3TB into. I still use the old MBP for photo management.


I have an Early 2011 MBP which I stopped using precisely because it couldn't get Mojave and therefore couldn't run the latest Xcode and therefore couldn't build for iOS 13. When I searched it sounded like any hacked upgrades would leave the graphics in a pretty poor state and it sounded like it just wouldn't be worth it. So I am curious on your results?


Another happy mid 2012 MBP owner here. I am happy that I could upgrade the RAM as soon as I bought it to 16GB, and replaced the HDD with SSD after 5 years, and have replaced batteries twice. Running 10.15 without any problems. The screen hinge has loosened, but nothing a screw driver and ifixit couldn't fix.


That will make you a 10x developer today but a 0.01x developer when shit hits the fan.


I built a guitar stomp box using a Raspberry Pi Zero to trigger samples with a foot switch. Runs on 9 volts and has a very bright OLED display so I can still see what it's doing when I'm playing in a dark venue.


I have been thinking about doing something similar -- would love to hear more about this if possible!


It's basically a Pi, a buck regulator, a tiny COB USB audio interface and an SSD1306-based 128x32 display. Removed all connectors and replaced them with soldered wires so it packs neatly into a tiny box.

The software is all custom and written in C, using Jack for low latency audio and my own driver for the display (Adafruit makes a Python driver but it eats half of your CPU and is not optimized for i2c bandwidth or high framerates).


Looks decent. I would suggest adding more tunings for us metal players that play lower tunings (for example, I play 2 whole steps down)


Not really a trick of Vim itself, but when using Vim from the terminal I find ctrl-z very useful to background Vim, type in a few shell commands for git or whatever and then use "fg" to hop back into Vim.


vim 8 and neovim have pretty functional in-built terminals (:term). You can try that if you're using one of these.


That's more keystrokes. ;)


Not if you bind it to ^Z. ;)


Well, you can't. The terminal translates Ctrl-Z into SIGTSTP before it even reaches vim. Alternative suggestion:

  nmap gz :term zsh<CR>
Same number of keystrokes, and does not override any existing normal-mode command from what I can see.


    :nnoremap <C-z> :term<Return>
works for me (tmux in urxvt).

Ctrl-Z only gets converted to SIGTSTP if the terminal has ISIG set. For example, try `stty -isig; sleep 5` and try to suspend or interrupt the sleep command.


Only a few more keystrokes is:

:sh ENTER

or for more control over which shell, or to run a shell with any arguments, or even to run any command w/ or w/o args:

:!bash

:!bash -o vi

:!bash some_script.sh

:!some_command some args

and after any of those, just press Ctrl-D or type exit ENTER to return to the vim session.

Very fast and easy to do. I use it all the time.


That's great, now I need a middle name. Any good suggestions?


Control-G. You'll really get attention when your name makes the bell ring on the VT-100 emulator.


Danger. Then you can tell people Danger is your middle name.

I actually seriously considered changing my middle name to Danger last year. However, I decided it wasn't worth the trouble for a cliche pickup line due to me being a dual citizen, and a resident in another, so I'd have to change my middle name in 3 different countries.


Plus, since it's the letter D, you get instant street cred for any One Piece fans. If that's your thing.


') DROP TABLE Employees;--


Shouldn't it be

"); DROP TABLE Employees;--

?


Nope. SQL uses single quotes for delimiting values, not double quotes.


But that would be SQL injection! Unlike the parent. Barbaric.


> Any good suggestions?

"Conqueror of worlds". Robert Conqueror of Worlds Smith sound like you know what you're doing when handling a nuke.


I don't have one and just pick random letters or names when it doesn't matter. Then I know which ones sold the info to the marketers. "Oh the place I have the X name to is now spamming me with junk mail..."


Just take an initial letter, as in Rembrandt Q Einstein, or Homer J Simpson.

I use my middle initial (see my username) because there are plenty of Andrew Martins in these circles.


> or Homer J Simpson

BTW relevant episode is called "Homer to the Max".


Be honest: you're just hunting for a little more Irish cred.


For more Irish cred, one can of course include an apostrophe as well as the other means mentioned elsewhere in this discussion. Verilog is quite useful in this regard, because of the way that one writes hexadecimal constants.

John 003'hdeadface Smith. Known as "six" to his friends.



"Bloodfist"


Ah, going the Mongolian route. In actuality, Mongolian names often translate to completely badass things.

Take for example Sükhbaatar. Translation? “Axe hero”

You could do worse than a Mongol name for yourself.


sudo rm -rf * compound initials that will really make you stand out.


Use a number, maybe something in hex.


So a middle initial A through F but you pronounce it as a number?


No, keep the leading 0x. John 0xdeadface Smith has the added social advantage of also enabling the 0pointer-is-superuser security hole in older versions of systemd, if one can convince people that one never goes by "John". (-:


Well, please enlighten us then!



Looks fine to me. What's wrong about that syntax?


Feels backwards to me, at least as a gut feel.

    groceriesByDepartment.mapValues { items in items.count }
vs e.g. Ruby (or at least close, it has been a while):

    groceriesByDepartment.map { |item| item.count }
The "in" makes it feel like you're calling "items.count" on...? and then getting the "items" from it (since it sorta implies that items are in items.count, which seems like nonsense).

E.g. this reads more naturally to me:

    groceriesByDepartment.mapValues { item.count in item }
    otherStuff.do { a.value + b.value in a, b }
which would also move the "what it does" further to the left, rather than having to skip over the argument names (which are frequently obvious in context, and/or something trivial like "it" or "item" or "x").

---

That said, if you consider it as "use 'items' in [a block of code]" it basically makes sense, and I could probably learn to stop worrying, and love the syntax.


I agree, the examples in the article look terribly confusing. And they're inconsistent with Swift's own for loop syntax: https://developer.apple.com/library/content/documentation/Sw...

    for item in groceries { print item.department }
versus:

    Dictionary(grouping: groceries by: { item in item.department })
The people who chose this syntax probably said "hey, it's VARIABLE in EXPRESSION, same thing right?". But the semantics are completely different!

In the for loop it's "for PRODUCT in SOURCE": the expression is evaluated first, and the variable is assigned with each of its items in turn. In the lambda or whatever it is, it's "{ SOURCE in PRODUCT }": first the variable is assigned, then the expression is evaluated based on it. The data flow is the opposite!

This is just objectively bad language design.


I prefer Ruby's syntax too, but Swift also has a shorthand version which is, IMO, usually nicer.

  groceriesByDepartment.mapValues { $0.count }


stuff like this always makes me miss Ruby's even-shorter-hand version though :)

  groceriesByDepartment.mapValues(&:count)  # not ruby, but meh


The shorthand version doesn‘t let you specify argumen types (only works when they can be inferred)


Which is vast majority of cases. Unless you work with a lot of legacy ObjC code.


Well, for starters, what does it mean? I haven’t seen that in any other language.


It is similar to let var=..... in exp from ML languages.


Haskell have let-in expressions, I think it is the inspiration for swift in this case.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: