Hi HN,
I'm looking for feedback on my distributed log db project. It's a part I pulled out of a stochastic time tracking system that we are building. I think it's a neat idea and has a lot of potential and I haven't found anything like it yet.
HN user
Hi HN,
I'm looking for feedback on my distributed log db project. It's a part I pulled out of a stochastic time tracking system that we are building. I think it's a neat idea and has a lot of potential and I haven't found anything like it yet.
Nice project! I really like the small and elegant syntax. Any plans for macro support in Dern?
I guess there are somethings you just have to let go off. I'm sorry man - I know it must have been hard. I hope it's getting better everyday.
That's an excellent point. The only place the library has access to the private keys are during account creation and message signing. Perhaps I should implement both directly in the wallet so it's visible and clear to everyone.
Yep - that's exactly been my experience.
(off-topic) Org mode is really amazing. I've transitioned almost completely from Emacs to Vim over the last few years but I still have Emacs on my dock only because of `org-mode`. I've tried substitutes in vim but nothing really works.
(back on topic) Another advantage of writing comments is coming back to the code becomes so much easier. I can re-read the comments and understand what's going on much faster.
To do this properly I've developed a simple system of 'categories' that allow me to structure the comments properly. I think they works really well. For anyone curious - here's an example in my last weekend project: https://github.com/theproductiveprogrammer/luminate
Check out the comments in the code (`main.js`). I think they make the code much easier to understand and maintain. It's almost an alternative to TDD - Comment Driven Design (CDD!)
Hi HN! I've been working with the Stellar blockchain recently and I found it hard to get a simple, open and transparent wallet that would let me keep my accounts on my local machine. So I wrote my own and made it available for everyone. I've tried to keep the code simple and clean and I would appreciate any feedback. The goal is it should be a simple, powerful wallet that any dev can pick up - be confident how it works and be able to hack in 5 minutes.
28 years! It frightens me and boggles my mind how something like this can happen after being married for so long. Looking back do you have any idea why? I'm sorry for your loss and I hope it'll get better for you soon. As others have said it's perfectly normal to feel depressed at such a life altering event and it probably does take a year or two to recover.
There could be bugs, of course, but the library is open source and developed by the Stellar network team.
Of course you are right in a sense - the core team also should not be blindly trusted. But, because your account is managed by the wallet and stays local to your machine, there is nothing much the library _can_ do IMHO.
One trick I've learned is to write out, (in a structured comment), what I am going to do an how I'm going to do it _before_ actually writing the code.
It seems redundant but it actually forces me to do a quick think-through of what's happening. Plus distractions get a lot easier to handle: I just need to read what I've written down to reload the context.
Paradoxically, I've found that this method of typing out _more stuff_ actually helps me finish much faster.
The Stellar network is a new-ish blockchain network managed by https://www.stellar.org/
They provide a REST API for interacting with the network itself and JS/Go/Python/Java standard libraries that can be used. Of these, the JS library is the most developed which is why I picked it.
Using the standard stellar library to connect with stellar is secure and transparent enough. What the wallet does is encrypts and protects your account keys (which are what give you control over your accounts). It does this using `scrypt`(https://www.npmjs.com/package/scrypt) for PKDF and sodium (https://www.npmjs.com/package/tweetnacl) for the actual encryption. Having access to the code should show you that there are no backdoors built in, no information being sent across to any third-parties, and so on. This is what people care about when protecting their accounts.
Your second question is also very insightful. Creating accounts is at the heart of Stellar. You cannot start performing any transactions on the network without first creating an account. And, in order to create the account, it needs to be be funded. This is why the wallet allows you to create (and fund) a new account on the network. You can read more about it here: https://www.stellar.org/developers/guides/get-started/create...
Hi HN! I've been working with the Stellar blockchain recently and I found it hard to get a simple, open and transparent wallet that would let me keep my accounts on my local machine. So I wrote my own and made it available for everyone.
I've tried to keep the code simple and clean and I would appreciate any feedback. The goal is it should be a simple, powerful wallet that any dev can pick up - be confident how it works and be able to hack in 5 minutes.
Nim is a great little language - it is enjoyable to work in and small enough to learn easily. It's neat for little utility programs that are "too big for bash" and "too small for java/C". Sometimes I think of it as an alternative to python.
What roles are you applying for? Perhaps there are other roles you would be a better fit for and you could try applying for those.
Otherwise, as others say, just be persistent. Sometimes you have a run of bad luck but it will pass. Don't read too much into it.
I have so many things that I need a system to keep me productive. Plus, it's fun to get things done and be confident in not having missed anything important.
Productivity is about getting the right results for the least effort!
I found this advice on negotiating to be most helpful:
1. Always stay polite. Getting emotional works against you in most cases.
2. Don't give ultimatums. Saying "I want this and this" is fine - don't add "or else...".
3. In your current situation, you have lost some negotiating leverage (your previous salary, your experience) but it's not unsalvageable. Simply bring them up and counter them yourself:
* Your previous salary is not relevant - only what you want to accept now. HR has a desire to lowball you so you should counter with a higher-than-market request.
* Your experience is not an issue. If they want you for the job then you are qualified for the salary that job entails.
4. Use the fact that you are _already_ giving them something by accepting an offer one level below! Make this a big deal and ask for compensation for doing a higher level job.
5. Pick a price that is 10% above market value and have a list of reasons you want it (new house, car, ...). Do not be afraid to stick to your ask. After all, they need you to do the job just as much as you need their job.
6. When picking a number do not pick a round number (numbers like 30% sound like you have not given it much thought. Numbers like 101,300/- sound like you have figured out your finances and have a good reason for your ask).
7. Be patient and remember you both want something out of this.
Good luck!
Edit: The Lightning Guide to Software Resumes has a short section on negotiating that is a good summary. A better book is "Never split the difference" by Chris Voss which is, I think, the best book on the subject.
This is an excellent area that could really help! Any pointers on where to start researching?
I think this is a fascinating subject! Let me dig into it and if I find something that's usable (and teachable) I'll write it out.
Many comments have pointed out "How to win friends and influence people" so I'll start there.
Schedule. Schedule. Schedule.
It's very important that you allocate some time to each area - upto 2 hr blocks of time for coding and architecture, 20 minutes for management tasks and a block of time for firefighting/reacting.
Also schedule in time for exercise, sleep, and just general downtime. All of which are very important.
Lastly, drop anything that's not important and delegate whatever you can. From your description it looks like you will be getting new hires to help you out soon. Just ride it out until you get support and make sure you don't burn out along the way. All the best!
I've found the HubSpot Sales blog to be surprisingly good. It can get a little "spammy" feel at times but I got a lot of good advice overall.
I don't know how their marketing blog is - never tried it but you could check it out.
I love the "post-release" mental hook strategy. I'll try it out :-)
Fascinating talk! Thanks!
Is there anything beyond the existing Rust tutorials/blogs that you would find helpful/useful?
Oh man! I _so_ identify with this problem. I've been struggling with it for ages. Lately I've been trying some voice exercises and they have helped a bit but I still slip back when I'm not thinking about it.
Nodejs is actually pretty easy to pick up. Any reason you don't want to get into it?
Elixir and Clojure are also fascinating to me. Is there anything in particular you feel would help you more than the existing tutorials? Projects/quizzes/follow-ups/...??
For FP, give Elm a try. It's a really welcoming community and newbie friendly. Plus it's pure Javascript and very easy to set up and get going.
For threads - check out "The art of multiprocessor programming" by Maurice Herlihy and Nir Shavit. I've found it to be really really good.
Ha! This one I wish I knew!! I've been trying to make a market where cooperates pay to improve developer productivity and it's been really hard.
Looks impressive! :-) All the best.
Golang and machine learning/big data are excellent choices. All the best for your career!
I _really_ enjoy Go. As jfoutz said above, Go is like a "better C". The "Tour of Golang"(https://tour.golang.org/welcome/1) is a really good place to start.
Is there anything I could write that would make it _easier_ for you to learn? Taking up project/quizzes/follow-ups...?