User:Lex Berezhny/Log/2018

From Open Source Ecology
Jump to: navigation, search

May 27, 2018

Worked for a few hours today on the shredder. I cut the 3/8" steel bar stock into 8 - 2"x2" squares in preparation for making the shredding blades. Still need to figure out the exact design and method I'm going cut the teeth.

May 19, 2018

Pretty cool new gadget, Arduino with built-in FPGA:

https://hackaday.com/2018/05/18/arduino-just-introduced-an-fpga-board-announces-debugging-and-better-software/

May 13, 2018

Finally got around to assembling the propane torch. Seems to work pretty well. Going to order the rest of the parts for the aluminum forge next week. Really looking forward to melting all of the aluminum cans I've amassed.

Apr 5, 2018

Got the propane torch parts and started assembly. I expect to have a working torch this weekend, then I'll order the rest of the things I need for the aluminum melting furnace.

...some time later...

Turns out three of the parts are incorrectly listed and linked in the BOM on the king of random video. Will make an updated BOM when I've actually gotten this thing fully built and working.


Nice animation of how hollow extrusions are made:

Apr 3rd, 2018

Missed today's dev meeting due to earlier than usual vision therapy appt. but on the way home from appt. I stopped at Home Despot to see what stuff they have for the shredder I'm building; ended up picking up three pieces of steel:

  1. 5/8" steel rod 36" long - $10.97
  2. 3/8" steel bar 2" x 36" - $22.87
  3. 3/16" steel bar 3" x 36" - $17.64

I had no idea what I was going to get, going in, but part of my goal is to design around what materials are easy to get at Home Despot (for folks not from the United States: this is a chain hardware store located just about everywhere, it is the least common denominator in terms of being able to go out and buy materials).

My thought process so far is to take the 3/8" bar and cut it into 2" squares, this will be the cutting blades in the shredder. I will then have to use grinder / chop saw to cut notches in the squares to turn them into cutting blades, something like...

Then use the 3/16" bar as the box frame, doubled up on the narrow side (where shredder rods attach).


Separately and on amazon, I've also ordered all the parts I need to make this propane torch for the metal furnace (the aluminum cans I've been bringing home and crushed from the fire station and my office aren't going to melt themselves!):


Apr 1, 2018

Ordered a $169.95 flux core welder from Amazon... what could possibly go wrong? Also, a grinder, drill press and a chop saw. I'm building a shredder!

Interesting... 3d-printed Halbach Motor... unfortunately, you need to purchase a license to use it, even for non-commercial use WHY!?!?! :-(

Mar 31, 2018

Looking at using the V-Slot® 20x20 Linear Rail for an extruded aluminum frame for 3D printer.

Various plastic shredder ideas:

Design and Production of Plastic Shredder (video couldn't be embedded)

Mar 30, 2018

Owning a 3D printer changes how you live your life and plan your day! From needing something to having it took about an hour, a trip to Walmart is about an hour and a half for me.

  • Needed to take barrel out of my XCR but couldn't find a 1/4" hex key...
  • A couple of minutes in OpenSCAD and nine lines later:
   hex_mm = 6.2;
   rounded = 2;
   translate([0, 0, hex_mm/2]) rotate([90, 0, 0]) cylinder(r=hex_mm/2/cos(30), h=7, $fn=6);
   translate([0, -8.5, 0]) hull() {
     translate([15, 0, 0]) cylinder(r=rounded, h=hex_mm, $fn=24);
     translate([10, -8, 0]) cylinder(r=rounded, h=hex_mm, $fn=24);
     translate([-35, 0, 0]) cylinder(r=rounded, h=hex_mm, $fn=24);
     translate([-30, -8, 0]) cylinder(r=rounded, h=hex_mm, $fn=24);
   }
  • Another 30 minutes on 3D printer with 100% fill and problem solved (i'm surprised how strong the key turned out even with some decent torsion put on it during use)

3d printed hex key.jpg

Mar 18, 2018

  • finally received my Prusa i3 mk3 and spent all Sunday assembling it.
    • initial impression is that it's way too complicated and way too many unique parts.
    • so many steps that I did not finish assembling in one day

Feb 25, 2018

Moar thinking about an ose crypto currency:

  • Put WoT on-chain instead of tracking this off-chain (on osedev.org). This will make things more transparent and eliminate the complexity of who can update the list.
    • downside is that this opens the WoT to various attack vectors from social engineering to exploiting bugs in implementation...
    • and being on blockchain it's difficult to fix things after the WoT is infiltrated by a thief and/or a malicious actor
    • Duniter has already faced some of these problems.
      • I can't find the thread on the duniter forum right now (it was in french and google translated it for me, so I don't know what search keywords to use to find it again) but essentially a person had gone to a "new member party" in two different countries in europe and presented themselves as a unique individual each time, thereby getting multiple identities in the system (and thus multiple dividends).
      • managing the list of members on osedev.org and employing various automated identity verification strategies could potentially make this too difficult for a bad guy to do... but on the blockchain where you only have to convince a few people to verify you, it leaves room for easy social engineering. how do we solve this on the blockchain? the duniter guys are trying to find strategies for this.
  • Replicate the duniter web of trust as an ethereum contract.
  • Built-in concept of "projects" which is also an ethereum address and thus people can put ose coins towards projects, similar to kickstarter, etc. except it would be an on going funding.
    • creator of project can disburse the balance to buy supplies or pay active participants (in addition to the regular dividends)

My thoughts (half-baked brain dump) on a currency WoT for OSE:

  • You have to re-verify every 12 months.
    • Too often and it becomes a pain-in-the-ass, also it costs real money for the person verifying you to verify you. (like 5 cents USD at current ether gas prices, but still :-D)
      • If we want people to actually put some reasonable effort into their due diligence, it's good limit number of times they have to do this.
    • Too seldom and someone who maliciously got verified through social engineering, etc, would stick around longer.
      • A solution to that might be to allow de-verifying someone, but this equally opens room for complications in the implementation (edge cases). Maybe still worth it to implement.
  • Once your verification lapses, you will still get dividends for half the time you were a member. So, if you were getting dividends for 2 years, you'd still get dividends for 1 year afterwards. I'm thinking of this as a "retirement" or a way to deal with situations where someone doesn't get verified due to reasons outside of their control (such as there is nobody to verify them again for some reason?)... or maybe they get sick and can't contribute as much / maintain social interactions with their peers?
    • The currency is intended to be human centric, so from that perspective a "cool down" period makes sense. I'm open to other ideas (less than 0.5 or no "cool down" at all).
    • It could also work to help a family after someone passes away, assuming other family members have the private key of the person who passes away they could continue to benefit from the dividends for a while longer...
    • This may have negative edge cases so I'm very open to feedback.

Feb 10, 2018

Doing more brainstorming on a OSE Coin as an ERC20 token... another feature to solve security concerns could be that the phase-in/phase-out period is 30 days instead of 15 days and everyone who is currently a member also will have 'voting' ability to change the public key from which the active participants update is performed.

  • The solidity contract would keep a table of public keys from which member lists can be submitted.
  • Existing members can 'vote' on which public key is allowed to submit member lists. Voting is an ongoing process, with vote outcome impacting the daily submission of member list. (You'd only have to vote once and after that your vote is re-used until you change it.)
  • Since phase-in/phase-out is 30 days, there is plenty of time to change the public key in case the key, the server or some part of the process is compromised before the effects of the compromise would start to manifest.

Every day when a server submits a member list, signed by a servers private key, the Solidity contract will check that the public key currently with the most votes is a match for the signed list, if the key matches then dividends are payed out, if the list is not correct then it's simply ignored.

In case I'm hit by a large bus or win a giga nugget lottery (and retire to an island with servants, gold bling and vomitoriums... ridiculous right?) it would be possible to replace me and osedev.org in a day:

  • select a new domain for osedev.org
  • check-out osedev from github and set it up
  • generate a new public/private key pair for your server
  • ask all existing ose dev members to vote for your public key
  • start submitting member list from your server
  • all systems back to normal!
  • and you still have 29 days left to resolve any issues before dividend payouts for existing members are affected.

As an extra precaution, an independent service on another computer under someone elses control would have a script running that would pull in the most recent member list that was added to the blockchain and diff it against the previous one, if there is a change it would generate an email to a group mailing list saying someone has joined or has left the member list. If an unknown/unexpect person gets added or someone who shouldn't have been removed gets removed, then we'll notice and can do something about it before the change is permanent (in 30 days).

Osedev-logo-square.png

Feb 9, 2018

  • ethereum gas fees (currently $0.035/transaction): https://ethgasstation.info/
  • upon further reflection on the potential of using ERC20 tokens I'm thinking now that the fees will just discourage use of the coin. if you want to do any kind of transaction, such as pay / tip someone OSE Coin you'd have to come up with $0.035 in ether gas ontop of whatever you are tipping in OSE Coin... on the other hand, is $0.035 per transaction a reasonable fee in order to have a decentralized / fully operational crypto currency network today at our disposal?
  • looks like there is a solution to above problem: https://github.com/ethereum/EIPs/issues/865 someone still has to pay the ethereum fees but it can be done as a service by some enterprising individual, they'd basically be selling ethereum on demand for OSE Coin per transaction, if OSE Coins start to have value than this would be a good business.


Feb 8, 2018

I've been thinking about Duniter and how it'll be years before it's fully tested and usable by communities outside of the original G1 currency and it occurred to me that it may be feasible to build OSE Coin on top of ethereum as a ERC20 token... only downside to this is that we'd have to pay ether as gas for various transactions. It would keep the dividend concept from Duniter but payouts would happen inside of an ethereum contract; the list of people to payout would be retrieved daily from an oracle who further retrieves it from osedev.org.

We can add various security precautions in case osedev.org is hacked, for example, the smart contract would require that a persons public key is published 15 days in a row before payouts begin and there is a 15 day phase out period after a persons public key stops appearing in the list (it does not appear in list for 15 days straight). This way, if anything happens to osedev.org there will be 15 days to resolve it while payouts continue as normal and to remove a malicious users public key from the list before payouts start (or add someone who was maliciously removed).

By using an ERC20 token it will be significantly easier to re-use all of the existing ethereum infrastructure and to get onto exchanges. This would be the fastest way to actually have a real OSE economy.

The list of public keys would be generated based on a combination of useful factors: total hours logged, CAD model changes, reviews/confirmations from other members as to a dev contributions, etc. The list generating function would continue to evolve to reflect lessons learned, taking into account special exceptions to the normal indicators, etc.

This has the best of both worlds:

  • As an ERC20 token it will live on it's own as a known and accepted standard coin system that works with all ethereum wallets. We gain both by having an existing code base to build on and the reputation of ethereum.
  • As a dividend system based on a list of public keys that we manage and maintain it has the "human" aspect of determining how we grow the community and help each other to build the future.

I still need to figure out what the cost would be in gas to run such an oracle driven ethereum dividend ERC20 token but I'd be willing to fund the initial gas account until things take off and more people would be willing to sponsor this. Probably it'll be $1/day to keep it running, not including what individuals pay for gas to actually use the tokens as currency.


Feb 4, 2018

  • tried to figure out strange license bug on github where it wouldn't recognize the GPL license of osedev
  • added videos to previous dev meetings and update the current meeting with new google slide deck

Jan 27, 2018

Lexprinter-v3.png

Jan 20, 2018

  • working on a simpler frame for 3D printer (re-using the universal axis rods for the frame instead of CNC cut steel sheets)
  • giving OpenSCAD a go instead of FreeCAD as it's much faster to prototype with:

Lex-openscad-wip-frame.png

Jan 14, 2018

Jan 6, 2018