12 ms·
First of all, this is a cool looking tool. Useful, well-organized, easily-accessed information is always a wonderful thing. I think a model like Dash would wor
by dangoor 11y ago
First of all, this is a cool looking tool. Useful, well-organized, easily-accessed information is always a wonderful thing.
I think a model like Dash would work a lot better: Rather than opting in my code to be sent up to Kite's servers, I opt in to the packages I'm interested in having indexes for. In some cases, as with node, there are ways to see what packages my project depends on and then those bits of indexed data could be sent to me.
My computer has a 512GB SSD. I could devote 10GB to indexes of libraries and my own code without blinking. The argument that it's too much data and therefore belongs in the cloud doesn't seem to hold up.
Also, there are cases where I'm not online... this is one of the great things about Dash. I have fast access to library docs anywhere I happen to be.
- deleted 11y ago[deleted]
- albasha 11y ago> My computer has a 512GB SSD. I could devote 10GB to indexes of libraries and my own code without blinking Mine has 128GB, less than 10GB free.
- Retr0spectrum 11y agoA 512GB ssd costs somewhere around £100. That puts the cost of 10GB at about £2.
- albasha 11y agoNot really willing to change the SSD that came with my 2015 Mac.
- ropiku 11y agoThat's for 2.5" SATA SSDs. Some people have embedded PCIe drives. And on some macs they are soldered. Regardless, reserving 10GB for offline help isn't that bad.
- jaytaylor 11y agoAFAIK the point about Macs is untrue. While the RAM in many Macs is soldered into the motherboard, SSDs are not (they are often proprietary, though).
- cpmsmith 11y agoThese days they're mostly (possibly always) flash on the motherboard. Afaik, chances are the only way you'll find a removable SSD in a Mac is if its stock spinning-platter drive was replaced.
- garrettgrimsley 11y agoThat's only true for the MacBook, which isn't a suitable development machine anyway. In both the current MacBook Pro and MacBook Air the storage is a PCIe SSD.
- ropiku 11y agoI said some Macs (thinking about the 12" retina) but I think that's where they are moving.
- jahewson 11y agoAssuming you're using a MacBook Pro, it's going to cost at least $300 to upgrade to the 512GB SSD. Compared with £100 = $140 for a 2.5" SSD. Given I don't need that extra storage, the cost for 10GB to me would be $300. Ouch.
- andrepd 11y agoMaybe you should opt for a more serviceable notebook, then?
- aplummer 11y agoRolls eyes. Thanks for the snark - the many iOS and Mac developers on HN
- y4mi 11y agosomeone using apples really should complain about prices though. its their choice to pay thrice of the market price.
- andrepd 11y agoI wasn't being snarky, really. I was suggesting that if upgradeability is in your list of priorities, then you would be better off with another notebook rather than a Macbook.
- imaginenore 11y agoWell, you bought into Apple's system. They almost always overcharge for hardware.
- tedmiston 11y agoOne alternative is a Nifty MiniDrive for ~$30 + a MicroSD card. I put m an extra 128 GB in my rMBP that way. http://minidrive.bynifty.com/ http://minidrive.bynifty.com/
- progx 11y agoDid you work as developer and make money with your machine?
- viperscape 11y agoJust wait for this summer, 3d nand is shaking things up in ssd world. Platter drives might even become obsolete by next year.
- CamatHN 11y agoAssuming you use all of the 512GB, if I wasn't needing to use the 10GB free then the 10GB costs $100.
- progx 11y agoAnd you are a developer or a consumer?
- albasha 11y agoDeveloper. I don't care about space because most of my stuff are cloud-based.
- kilroy123 11y ago100% agree. I don't think this will ever take off, if there isn't an opt-out for local code to be pushed up. Far too many companies will never allow employees to do this.
- alexflint 11y agoActually kite does not index any directories that you haven't explicitly enabled. So it's really easy to enable it for some but not all of your codebases.
- aeorgnoieang 11y agoI think this really makes a case for this being best as an open source API, i.e. something anyone could access and something to which anyone could contribute. I'd personally prefer not having to manage the indexes on any of my computers. Regardless of where the info is stored, it should be possible for the client to run locally, and access your code, but not actually send anything more revealing than what you're already sending to, e.g. Google.
- Sven_ 11y agoI use Zeal. Local. Opensource. Uses Dash's docsets. Has basic integration with Sublime. I have a feeling lot of the functionality of Kite will eventually get into Zeal type local tools.
- nickjj 11y agoWhich component of Zeal allows you to pull in your own local code for completion? Zeal definitely works great for popular third party library code and integrates with Sublime, but I haven't seen options for it to integrate with your own libraries or third party libraries that aren't quite big enough to be supported by Zeal directly.
- alexflint 11y agoYes but how much CPU and memory are you willing to spare? Parsing is quite CPU-intensive, hence the CPU drag you often see when IDEs start indexing, and type inference involves a lot of unpredictable lookups all over the index, so much of it needs to be in memory to get reasonable performance (yes this is still true if we're talking SSD). To see why: when you type "x.foo()" we need run type inference on the complete data flow chain that produced the value "x", so that we know which particular "foo" you're using. Throughout this analysis we may also need to know a lot about the python libraries you're using, since you may be passing values into and out of arbitrary third party libraries. If each of the steps in this chain triggered an SSD read then you'd often have a multi-second lag between hitting a key and seeing the result.
- brians 11y agoThat hardly seems necessary. Only so many objects have a foo method to find. With free cores, search from both ends and meet in the middle.
- gorpomon 11y agoThis argument seems decent enough, but a couple of things come to mind. 1. Wouldn't multiple HTTP requests be just as slow? (especially if you're on a slow cellular connection, which I am at a coffee shop). Are there any benchmark tests you've done? 2. Is there a reason you couldn't select libraries to download at the start of your project? It's not like you switch libraries too much, especially after initial exploration. I don't think it'd break workflow too much to check some boxes or pick a few packages, I do it already in sublime. 3. To allay concerns about storage for some, couldn't you dump the data after some point? It seems like to be useful you'd only need it while someone is coding, and certainly not long term. Just some thoughts, would love to get a response. Like others have said, I love the idea, but especially at my work, I don't think I could actually get permission, which puts me in a grey area.
- dangoor 11y agoIn addition to what the others said, I'll note that PyCharm is already doing these things and there isn't a multi-second lag between hitting a key and seeing the completions. It is also doing type inference. And sure, there's a bit of lag when it needs to do a full index, but that shouldn't be often.
- amai 11y agoThe link to dash: https://kapeli.com/dash https://kapeli.com/dash