- learn blockchain concepts
- learn ethereum
- learn how to use metamask
- learn how to use hardhat (https://hardhat.org/)
- learn how to deploy and interact with a smart contract
- learn common smart contract standards like ERC20 (token), ERC721 (nft), ERC1155 (opensea)
- learn ipfs
- learn how to read blockchain explorers like https://etherscan.io/
- learn how to use web3 and etherjs
- learn solidity
tips to evolve as a developer
developers get stuck, paralized
https://www.oreilly.com/library/view/apprenticeship-patterns/9780596806842/ch04.html
Make It Stick https://www.amazon.com.br/Make-Stick-Science-Successful-Learning/dp/0674729013
- learn why we need docker
- learn how to define a Dockerfile
- learn how to build a docker
- learn how to list images
- learn how to run docker with port forward
- learn how to go inside docker to debug, running /bin/bash
- learn docker compose
- learn how to send a docker image to a reqistry (dockerhub or aws ecr)
- learn how to deploy a docker to kubernetes, aws ecs or another platform
- learn how to bundle backend using webpack in a single bundle (check this https://gist.github.com/jgcmarins/2860f547f5d785dce24ca0eadbe3abdd)
- learn how to automate lamdba deploys using serveless or aws cdk (github actions)
- learn how to configure and automate api gateway
- learn how to automate tests lambdas using jest
- learn how to configure, automate and use RDS Proxy to fast database workflow in lamdbas (also cache database connections)
- how the performance gain using RDS Proxy over normal database usage
- learn about cold start and lambda statefull (https://www.swyx.io/stateful-serverless/)
- expose a CRUD api in lamdba
- put everything on open source (github)
- write a blog post about each of the topics above
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | import { fromGlobalId } from 'graphql-relay'; | |
| import { Model, Types } from 'mongoose'; | |
| // returns an ObjectId given an param of unknown type | |
| export const getObjectId = (target: string | Model<any> | Types.ObjectId): Types.ObjectId | null => { | |
| if (target instanceof Types.ObjectId) { | |
| return new Types.ObjectId(target.toString()); | |
| } | |
| if (typeof target === 'object') { | 
We'll be going through an example to work with Relay hooks and Razzle (INSERT RAZZLE LINK HERE) which is a framework agnostic SSR library.
As we will be using relay hooks and its support for react's concurrent mode, we'll need to make Suspense work in SSR, as it has no out of the box support yet. Read more.
React documentation itself recommends that we use Loadable Components, so this is the solution we are going for.
(First part ommited cause I haven't started this gist at that thime)
-  Create feature to enable user to upload files
-  Add relation with events when event has been created
Event table should have a banner_idcolumn (something like that) that will contain the uploaded file id, related to the new event being created.
 
-  Add relation with events when event has been created
Event table should have a 
- Learn how to start a new react native project
- Run it on ios simulator, on android emulator, on a real iPhone device and on a real Android device, with and without debugging enabled.
- Learn how to upgrade a react native project
- Learn how to add a package to the project
- Learn how to add a package that has a native dependency (https://github.com/airbnb/react-native-maps, https://github.com/evollu/react-native-fcm) - DO NOT USE COCOAPODS
- Learn how to use fetch to get data from your backend
NewerOlder