Dev Diary
Note of daily coding#
- This page contains short dev stories and hyperlinks to larger part of notes.
- Only "hard to find on google" things are noted.
- Ordered counter-chronologically.
TODO#
- 0221: VSCode KeyMappings cancel some keys like π,ƒ, etc
- Markdown Link paster like Obsidian. (or chrome extension)
- 0204: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management
- Diagram for reading/ writing.
- VSCE for open remote before fork.
- algob web [https://algobuilder.dev/api/web/index.html#relation-to-algob]
- 0222:Pipeline UI are used by Algo Expolerer Algo Explorer and Algorand Foundation
2022-03-02#
- Confluence: draft: Price Verifier contract
- an ASA for each aAsset (like aBTC, aETH, ...)
- one verifier for all aAssets, IDEALLY. The limit of TEAL would be annoying here.
- We can do one contract C1 to submit ZKP verified price, one contractC2 to distribute the price.
- The C2 only accepts price from C1, and the price is verified by ZKP. C2 stores all the info and users will ask price from C2.
- In this way, the two contracts are shorter and stores less prices hence shorter.
- Trade and other contracts will read price from C2 in before or the only contract in (2.). (From [https://github.com/Artcoin-Network/artificial-algorand-contract/pull/8#issuecomment-1055551621])
- How to review design docs(From ZMY)
- Don't fix too much on details.
- Use too much time on details.
- When to raise issue: in most of the time we don't need to raise issue. Q&A. A full docs would be with Q&A.
- Slides: too many questions and ambiguity. Docs can avoid these problems.
- Docs are designed to be read to the end, maybe the "why"s are explained in the latter part.
- Write the problem clearly, including the origin.
- Try first then raise issue, and try to solve it.
- Productivity > Attitude > Synchronicity
- Confluence Inline comment has no delay publish functionality. So raise the question on the second/third reading.
2022-03-01#
Testing VSCE:
- mushan.vscode-paste-image
- d3v.pastespecial
More to test:
- rockingskier.copy-copy-paste
Add to note:
- jakob101.RelativePath
- christian-kohler.path-intellisense
Want: VSCE: .md auto refactor when RelativePath changes. Why Obsidian made a new platform (doesn't justify closedness): 1.money; 2. too many extensions with VSCE; 3. New Hotkeys/UI.
- Grand Meeting [Meeting 20220301 Bo Yifang Mengyuan Hao LION]
2022-02-28+#
- Finished Chore/functionality test PR#8Artcoin-Network/artificial-algorand-contract.
- PR this PyTeal docs
2022-02-27+#
- Tried to solve Art Design Bounty
- Test TEAL capability in Chore/functionality test PR#8Artcoin-Network/artificial-algorand-contract
- Research and test string operation in TEAL with PyTeal. There's no native string search function. The polyfill for
hasSubstring
(contains) would be loop+compare. #TOCONFLUENCE- TEAL allows loop with
while
andfor
- TEAL allows loop with
- TEAL allows to read Global State and read Local State of 4 accounts from other smart contracts.
- TEAL version: now v1-v6 are published. AVM 1.1 uses TEAL v6, and PyTeal 0.10.0 supports v6. I PR-ed this doc.
2022-02-26+#
- Research >>16 , result here.
-
Git allows merge two branches (one into another).
shell git checkout master # master is checked out git pull # update local git merge new-branch # merge branch new-branch into master git push # changes on remote. Then checkout a feature branch
- Git Change old commit message: git rebase interactive now has a reword option, to edit the commit message.
- Python
math.modf
can get the fractional part of a number.
- Python wait for key press (origin):
input("Press Enter to continue...")
- GitHub get repo id:
$("meta[name=octolytics-dimension-repository_id]").getAttribute('content')
. Origin
- JS deep clone (hard copy) an object:
structuredClone(value)
. Lodash is no longer needed.
2022-02-25+#
- Coding for Feat/trade contract: PR#7 Artcoin-Network/artificial-algorand-contract
- code: PR#588 scale-it/algo-builder
2022-02-24+#
- Researched Pipeline-AlgoComponents, Pipeline-Components and Pipeline Class and Pipeline-UI is enough for us right now.
2022-02-23+#
- Day off
2022-02-22+#
- Tried to use AlgoB-web and found Pipeline UI are used by Algo Expolerer Algo Explorer and Algorand Foundation. Should study more on this. #TODO
- Expect the Demos, there's also a Use Example on code sandbox
- Pipeline has a Pipeline UI
- #TOCONFLUENCE
2022-02-21+#
2022-02-20+#
- Finish first smart contract Artcoin-Network/artificial-algorand-contract PR#6. During this, tried to insert the svg image into the markdown with Draw.io diagrams into Markdown files using VSCode Extension. But it didn't work, because GitHub cannot render the svg image. Cannot render example. The import relative link part also fails Relative Links in Pull Requests so I uploaded the PNG directly. #TOREF
- More on cannot render: Fix relative SVG rendering
- Travel(flight/train) without valid NIE is ok.
2022-02-19+#
- Coding day for Artcoin-Network/artificial-algorand-contract PR#6
- Algob - Debug Stack can show the stack trace of the stack language. This is extremely helpful for debugging.
- Algob - optInToApp and
optInToASA
, will fail on the second run, because the account is already opted in. - How to deal with mice caught: use alcohol to anesthetize it.
- Group transactions are atomic, they will either all fail or all succeed. It's clearly written in Atomic transfers that one of the "use case" is "Decentralized exchanges - Trade one asset for another without going through a centralized exchange."
- LogicSig/SmartSignature vs SmartContract : the former one is "stateless" and the latter is "stateful". From Execution Environment for Smart Signatures - AVM & TEAL
2022-02-18+#
- [Meeting 20220218 Yifang LION]
- Chai Assert throws
- Coding day for Artcoin-Network/artificial-algorand-contract PR#6. (also art-aUSD-mint-flowchart) Chai Assert throws
- VSCode Pylance warns on importing wildcard (example). To ignore wildcard import, use
# type: ignore
instead of# pylint: disable=wildcard-import
(origin). However, doing so is not recommended.
2022-02-17+#
- PyTeal
- Cryptographic Primitives for confirm update teal code.
- CallApp is actually OnComplete.NoOp
- Interface of SmartContract Params
2022-02-16+#
- Mocha with Typescript
- Artcoin-Network/artificial-algorand-contract PR#5
- PR#588:algo-builder/pull/ #TOREF
- ISSUE#588:algo-builder/pull/ #TOREF
2022-02-15+#
- AbstrLabs Confluence
- Confluence import from Markdown
- Note Rule 2022 Preparation
- Read AbstrLabs/algorand_bn256
- Learn AlgoBuilder (
algob
)
2022-02-14#
- Note Tool Comparison 2022(#LINK)
- 2 Issues in tejasvi/markless
2022-02-13#
- Organize note
- Confluence Page
- PyTeal Basic
- Reflection on refactor: #TODO:fix: same-name error.
2022-02-12#
- Organize note
2022-02-11#
- Organize note
2022-02-10#
- Meeting 20220210 Bo LION
2022-02-09#
2022-02-08#
2022-02-07#
- Meeting+Algopulse 20220207 Yifang Bo LION
- Meeting 20220207 Bo LION
2022-02-06#
- Publish PabloLION.com
- Rewrite CV.
- Tofugu cover letter
- Test wanikani
- #TODO: check 不背单词
2022-02-05#
- PR Algorand PR History > typo #725, #727
2022-02-04#
2022-02-03#
- Python Note > Interesting new grammar
- Python Note > Python Package Manager
- Python Note > Python Versioning
- GitHub Note > Remove sensitive data from GitHub
2022-02-02#
- Finish and publish symmetric-secret-share v0.0.5. It's now a PyPI package.
- Python Note > Encoding
- Python Note > PyPI
- Python Note > Remove all package
- Python Note > Load JSON schema as Class
- Python Note > Python Singleton
- JSON Schema Note > Define types
2022-02-01#
- More function on symmetric-secret-share
- Python Note > Poetry
- Python Note > PyNaCl
- Python Note > Encoding
- Python Note > Pylint
- Python Note > Remove file
- Python Note > Enum in Python
- GitHub Note > GitHub raw file
- Typer Note > Abort
2022-01-31#
- Started symmetric-secret-share
- Python Note > Poetry
- Python Note > Codecs
- Python Note > Python Decorator
- Python Note > Change suffix with pathlib
- Typer Note > Local Files
- Typer Note > SubCommand
2022-01-30#
- Ill. Rotten sushi + Duolingo.
- PR Algorand PR History > escape pipe char
2022-01-29#
- Chinese Drama 小丈夫(not recommended)
- AlgoPulse_first_deliver_20220128
2022-01-28#
- Dr. Stone
- Chinese Drama 小丈夫(not recommended)
- AlgoPulse_first_deliver_20220128
- Teal Note > TEAL Basic knowledge
2022-01-27#
2022-01-26#
- Interview 20220125 HichamDz38
- PR Algorand PR History > escape pipe char
2022-01-25#
- Interview 20220125 HichamDz38
- Frontend PR > juliencrn usehooks ternary dark mode
2022-01-24#
2022-01-23#
2022-01-22#
2022-01-21#
- #TODO Add teal note
2022-01-20#
2022-01-19#
- CSS Note > Houdini
- Mac Note > Terminal bell
- Goal Note > Switch networks
- Meeting+Algopulse 20220119 Yifang Bo LION
2022-01-18#
2022-01-17#
- Docker Note > New Ubuntu Image
- Docker Note > Ubuntu New user
- Docker Note > Ubuntu tools for Docket image
- Docker Note > Continue Docker image Shell
- Pomodoro List
- Shell Note > current directory
- #TODO NAS Note > Git with DSM7
2022-01-16#
- AOE2. Also did some docker.
- Docker Note > basics
2022-01-15#
- Did some docker. Cleaned house.
- Docker Note > basics
2022-01-14#
2022-01-13#
- refactor dev console
- Javascript Note > Async iterator to array
2022-01-12#
- refactor dev console, had some problem with the old Algorand example codes
2022-01-11#
- refactor dev console
- Javascript Note > Why folder-level index js
- TypeScript Note > Type equality
- TypeScript Note > Destructuring assignment with condition
- Git Note > Prune local branches
2022-01-10#
- Javascript Note > Import and Export
- Javascript Note > Import raw string
- Javascript Note > Why folder-level index js
- Habits Summary > Note Habit
2022-01-09#
- Add a dark mode color theme to [obsidian-arrow]^obsidian-arrow.
2022-01-08#
- No code day
2022-01-07#
- Start Code review for AbstrLabs (wallet connection)
2022-01-06#
2022-01-05#
- Programming > Priority codes
2022-01-04#
- 11H work
- write a full CLI on artificial-dev-config
- Python Note > Path of Project root
- Python Note > CLI with Python
- Python Note > Formatter in VSCode
- Python Note > Ellipsis object in Python
2022-01-03#
- Python Note > Relative import in Python3
- Javascript Note > Throw Error
- TypeScript Note > Array prototype at method Update
- TypeScript Note > Writing produces type intersection
2022-01-02#
- AbstrLabs: More Docs, Jira, refactor
artificial-frontend
andartificial-algorand-contract
2022-01-01#
- AbstrLabs: refactor all repos, now we have new repo structure.
- AbstrLabs: write Jira
2021-12-31#
- AbstrLabs: refactor
artificial-frontend
- GitHub Note > Multi-License repo
2021-12-30#
- Node Note > Yarn unmet peer dependency
- Finished ASA of TS version with algosdk(js)
- start to refactor ART repos
2021-12-29#
- Started a repo for TS version.
2021-12-28#
- Javascript Note > Proxy
- TypeScript Note > Typing for in loop
- Meeting 20211228 马一方(Yifang) 施云瀚(LION) (Chinese)
- Meeting 20211228 姚博(Bo) 施云瀚(LION)
2021-12-27#
- Did a little Habit ICU
2021-12-26#
- No code day (Yoyo)
2021-12-25#
- Algorand Note > Better sandbox
- Test
algorand-python-sdk
2021-12-24#
- Algorand Note > What is sandbox
- Algorand Note > Interact with sandbox
- Javascript Note renamed from
ES Note
2021-12-23#
- Low productivity day
- Recover
- Yoyo
2021-12-22#
- Low productivity day
- Study/Language/English > Random online test
- Apple support cases > Cancel HelloTalk subscription
2021-12-21#
- Low productivity day
- Test Python Note > Python module method override
2021-12-20#
- reinstall python 3.10
- remove python 3.8, 3.9 Python Note > Python version control
- Algorand Note > ARTcoin
2021-12-19#
- Day off, played HelloTalk
2021-12-18#
2021-12-17#
- ASA on Algorand chain Algorand Note > ASA
2021-12-16#
- MUI-PR-30241
- Meeting 20211216 姚博(Bo) 施云瀚(LION) (Chinese)
- Meeting 20211216 马一方(Yifang) 施云瀚(LION) (Chinese)
- Python Note > Python version control
2021-12-15#
- PyTeal Basic > Get familiar with PyTeal
- Python Note > Python typing
- Algorand Note > Algorand sandbox
2021-12-14#
- rebuild habit-ICU framework
- Learn some python and PyTeal
2021-12-13#
- Meeting 20211213 姚博(Bo) 施云瀚(LION)
- Meeting 20211213 马一方(Yifang) 施云瀚(LION) 姚博(Bo) 周梦远(ZMY)
- Relax after hackathon
2021-12-12#
- Game : snarky-holdem for Mina Bootcamp 20211209
2021-12-11#
- Game : snarky-holdem for Mina Bootcamp 20211209
2021-12-10#
- Game for Mina Bootcamp 20211209
- Node Note > Node 17 compatibility with CRA
- TypeScript Note > relate array and literal type
2021-12-09#
- Mina Bootcamp 20211209
2021-12-08#
- Habit ICU framework (undecided npx
electron-react
orgithub boilerplate
)
2021-12-07#
- Habit ICU Docs and class diagram
2021-12-06#
- Check Milaboard
- Read DeFi Note > Synthetix Network Token Whitepaper
2021-12-05#
- Learn and play figma, for habit-icu and AbstrLabs company website
- Discarded Teambition, for these defections: #TODO: add to TOOL
- Link without href tag (with onClick event)
- Tasks in TODO cannot convert to issue/story
- Gantt chart is not so clear
- Chinese server and international server don't share the same data
- Cannot change default issue priority level
- Last straw: Untraced bug when failing to add list(task group) and issue (sometimes duplicated and sometimes none).
- Clean working desk. All three monitors work perfectly now. But currently no mic/webcam. Easiest solution is to use an external one.
2021-12-04#
- The project to organize my life and work. named (my-habit) then changed to habit-icu.
- Tested: Teambition, MDC, Ant Design(flicker bug), not so good
2021-12-03#
- (low productive day)
- Meeting+Algopulse 20211203 Yifang LION Demetri Zubiar
2021-12-02#
- Read DeFi Note > Synthetix Network Token Whitepaper
- AbstrLabs: AbstrLabs > meetings Design meeting 20211202 preparation
- AbstrLabs: AbstrLabs > meetings Design meeting 20211202 agenda
2021-12-01#
- Design doc for App Idea > My habit: VSCode Note > Open drawio file natively
- Looking for some learning material from internet. Found MASTER IN BLOCKCHAIN TECHNOLOGIES
2021-11-30#
- Read Programming > Design document
- Economy classMonetary-Policy-Note > Taobao Tutor
- Started new project App Idea > My habit
2021-11-29#
- AbstrLabs Meeting 20211129 姚博(Bo) 施云瀚(LION)
- AbstrLabs Meeting 20211129 马一方(Yifang) 施云瀚(LION) (Chinese)
- AbstrLabs _private_Meeting 2021129 马一方(Yifang) 施云瀚(LION) (Chinese)
- Design docs on Confluence
- Learn Programming > Class diagram
2021-11-28#
- New page "About DeFi" on Confluence
- Read Programming > Design document
- Fix shell script "deploy-obsidian", notes in Shell Note
2021-11-27#
- Read DeFi Note > Synthetix litepaper https docs synthetix io litepaper
- Read Programming > Design document
- Fix Note Tool > EBOPsub-list style.
- Some branding work on AbstrLabs
2021-11-26#
- Add some style to Note Tool > EBOP
- Read DeFi Note > Synthetix litepaper https docs synthetix io litepaper
2021-11-25#
- Finish up [https://note.pablolion.com/]. Added some content.
- [ ] #TODO Note and share automation shell script.
- DeFi Note > Synthetix litepaper https docs synthetix io litepaper
- Epic non-dev: shopping@la roca.
2021-11-24#
- Create this website, Black Friday Shopping, some DeFi Note > Synthetix litepaper https docs synthetix io litepaper
2021-11-23#
- Create this website with Note Tool > How to build a site like this, Shell Note > coding first bash to convert obsidian notes Shell Note > glob filename pattern match
- Making some new time tracker
2021-11-22#
- Making some new time tracker
- Also Monetary-Policy-Note
2021-11-21#
- Setting up new MBPM1Pro
2021-11-20#
2021-11-19#
2021-11-18#
- DEV-10
Real World | ARTcoin |
---|---|
ARTcoin | gold |
aUSD | USD |
deposit | Stake |
interest of deposit | mint aUSD with ART |
- Learn Coursera[https://www.coursera.org/learn/intro-economic-theories]
-
ZKP terms: #GATHER_POINT
Field Term Definition zkSNARK QAP Quadratic Arithmetic Program zkSNARK Circom language for SNAKR functions
- completeness/soundness: necessity and sufficiency in knowledge $\Leftrightarrow$ proof.
2021-11-17#
- ZKP#idea: In an (interactive) ZKP system, the prover can fool the verifier plagiarizing the same answer from a real ZKP prover. Like I request a 3-color map from M$, and M$ doesn't have the answer, but he asks google with same question and google's prover was real. Idea from reading Origin3
- Schnorr protocol=Schnorr signature: an algorithm for signing messages based on Schnorr group.
- ZKP:NIZK: NIZK is a type of zero-knowledge proof. Core: a decent hash function lying around
2021-11-16#
- [ ] More on NPComplete Problems: Reading list Origin1
- NPComplete Problem: Independent set $\leq_P$ Clique Problem. Origin1
- 3-SAT $\leq_P$ 3-Coloring. Origin1
- NPComplete Problem: 3-SAT $\leq_P$ Independent Set. Origin2
2021-11-15#
- ZKP, simulator: Verifier's move cannot be predictable, this includes that time is not reversible.
- ZKP#idea with probabilistic model: Prover: I will score 60% of total points.
- ZKP is based on cryptographic algorithm: [https://en.wikipedia.org/wiki/Commitment_scheme] We can change the key so that the "authenticator" sees different result when opening the box with different keys? Just like the "time machine experiment" in [https://blog.cryptographyengineering.com/2014/11/27/zero-knowledge-proofs-illustrated-primer/] The cost is to break the hash-key system, so maybe its practically safe.
- ZKP#idea: Any NP-complete problem can be designed into a cryptographic algorithm.
- ZKP#idea: We can also use ZKP to verify messages like password without passing it. (e.g. require&compare Hash(msg+'a'), Hash(msg+'b'), Hash(msg+'c'), although practically this is worse than just using an asymmetric cryptography.)
- UX: If a setting needs to confirm/save. Use a floating button or put the button at the beginning.
-
Crypto Currency: mint:
Minting is the process of validating information, creating a new block, and recording that information into the blockchain. Thus, Proof-of-Stake is the minting process for how blocks are created and how data is added to a block. Origin Creating new crypto coins using a proof-of-stake (PoS) consensus algorithm. In contrast, proof-of-work (PoW) cryptos come into existence by being "mined." The mining and minting terms were created from real-world coin making. Gold and silver are "mined" out of the ground and then "minted" into coins for circulation. Origin
2021-11-12#
- Discord server
𝔸𝕀𝕄
: Readme (discarded) @2021-11-15
2021-11-11#
2021-11-10#
2021-11-09#
2021-11-05#
2021-11-04#
2021-11-03#
2021-10-29#
2021-10-28#
2021-10-27#
2021-10-24#
- [ ] VSCode: why VS code cannot format
main.*.chunk.js
while chrome can (with pretty print)? - Firebase Local Emulator Suite
- Firebase API key security
2021-10-21#
- HTML Note > Img tag
- ES6: Object.assign()
- MUI
- Adding a lot of pages since 2021-10-14. Nothing special to note since they are all in
commits
.
2021-10-18#
2021-10-16#
2021-10-13#
2021-10-12#
- [[MUI Note#iconbutton-does-not-extend-button|MUI
<IconButton>
does not extend<Button>
]] - PR#5600 on Firebase
- Web Note > Acronyms
2021-10-11#
2021-10-10#
2021-10-08#
2021-10-07#
2021-10-06#
2021-10-05#
2021-10-04#
2021-10-03#
2021-09-30#
2021-09-29#
- Fire: Hosting .firebaseapp.com works but .web.app fails
- Fire: Aboout Offical documentation
- Fire: No Firebase App Error with React + Webpack
2021-09-28#
2021-09-27#
2021-09-26#
2021-09-25#
2021-09-24#
2021-09-23#
2021-09-22#
2021-09-21#
2021-09-20#
- AWS: Amplify automatically login after sign-up
- AWS: Amplify use
@aws-amplify/cli@latest
- MUI: migrate to V5
- GitHub flavor markdown
- MUI: Fix Clicking Ripple Effect only half width