დეველოპმენტი

Solidity Wolf

შეწყვიტე კოპირება. დაიწყე შიპინგი.

5 თვის შემდეგ, შეწყვეტ ტუტორიალების მიყოლას — გახდები ის, ვისი კოდიც სხვებს აუდიტი გასწევთ.

  • 20 კვირა
  • საშუალო
  • ქართული + ინგლისური
  • 750 PUSDT

ალბათ შენ ერთ-ერთი ხარ მათგანი.

  • ლევანი

    უყურა 40 საათის Solidity ტუტორიალი. ააწყო სამი ERC-20 ტოკენი მიყოლით. სცადა საკუთარი ნულიდან დაეწერა — ვერ გაიხსენა, რომელი keyword სად იყო. შეხედა საკუთარ "პორტფოლიოს" GitHub-ზე და გააცნობიერა: ყოველი ცალკეული პროექტი იყო სხვისი კოდი ცვლადების სახელების შეცვლით.

  • ანა

    სენიორი backend დეველოპერი, 6 წელი Python-ში. დაინტერესდა Web3-ით. შაბათ-კვირას გაატარა Solidity ტუტორიალთან. შემდეგ ორშაბათს მენეჯერმა სთხოვა კომპანიის სამუშაო NFT კონტრაქტის შემოწმება. დათანხმდა. წარმოდგენაც არ ჰქონდა, რას ნიშნავდა `storage` vs `memory`. კონტრაქტი დაიდო ბაგით, რომელმაც პროექტს 12 ETH დაუჯდა.

  • საბა

    აპლოიდი თავისი პირველი კონტრაქტი mainnet-ზე ტესტების დაწერის გარეშე. ფიქრობდა, ტესტები "სენიორი ხალხისთვისაა." reentrancy ბაგმა კონტრაქტი დაცალა პირველ კვირაში. ყველას უთხრა, Web3 თაღლითობააო. ეს ბაგი 2016 წელს იყო დოკუმენტირებული. არავის ესწავლებინა, რის ძებნაც სჭირდებოდა.

ხალხი Web3 დეველოპმენტს არ ანებებს თავს იმიტომ, რომ Web3 ძნელია. ანებებენ თავს იმიტომ, რომ Solidity ისე ისწავლეს, თითქოს JavaScript ყოფილიყოს — და გაუშვეს კოდი, რომლის გასწორებაც რეალური ფულის დახარჯვა გახდა.

ვინ ხდება Web3 ინჟინერი — ამის ერთადერთი ყველაზე ძლიერი მაჩვენებელი არ არის ინტელექტი ან წინა კოდის გამოცდილება. მნიშვნელოვანია, ასწავლეს თუ არა მას ფინანსური ინჟინერივით ფიქრი — და არა მხოლოდ კოდერივით. სმარტ კონტრაქტების უმრავლესობა ფინანსური ლოგიკაა. ინჟინერები, რომლებიც წარმატებას აღწევენ, ორივე მხარეს ხედავენ.

თუ შენი განათლება GitHub-ის რეპოების კოპირებით მოგდის, დაწერ კოდს, რომელიც GitHub-იდან კოპირებულ ბაგებს იქნებს. Solidity Wolf ის კურიკულუმია, რომელიც ამ ციკლს არღვევს — ასწავლის ის, ვინც უკვე ცხოვრობს ფინანსებისა და ინჟინერიის გადაკვეთაზე.

5 თვის შემდეგ, ინჟინერს, რომელიც იყავი, ვერ იცნობ.

  • შეწყვეტ კონტრაქტის შაბლონების კოპირებას GitHub-იდან → დააარქიტექტურებ კონტრაქტებს ნულიდან SOLID პრინციპებით, და არა StackOverflow-დან.
  • შეწყვეტ mainnet-ის შიშს → დააფლოიდებ სიმშვიდით, რომელსაც ტესტები 100%-ით კოდის გზას ფარავს.
  • შეწყვეტ მიხვედრებს, რას ნიშნავს `storage`, `memory` და `calldata` → ოპტიმიზებ gas-ს როგორც ინჟინერი, რომელმაც იცის ყოველი keyword რა ჯდება.
  • შეწყვეტ კოდერ ყოფნას, რომელიც ფინანსების გაგებას ყალბად აჩვენებს → გახდები ინჟინერი, რომელიც კონტრაქტებს კითხულობს ისე, როგორც CFO ბალანსის ცხრილს — სტრიქონ-სტრიქონ, განზრახვით.
  • შეწყვეტ კითხვას 'ჩემი კონტრაქტი უსაფრთხოა?' → უპასუხებ ამ კითხვას. მტკიცებულებით. ტესტის დაფარვით. Checks-Effects-Interactions პატერნით ყოველ state-changing ფუნქციაში.
  • შეწყვეტ 'junior Web3 developer' სამუშაოებზე განცხადებების შეტანას, რომელთაც ვერ აკეთებ → შეიტან განცხადებას GitHub პორტფოლიოთი, სამი აუდიტირებული კონტრაქტითა და Hardhat ტესტირების ჰარნესით. ინტერვიუ ფორმალობად იქცევა.
  • შეწყვეტ ჩვეულებრივ კოდერ ყოფნას → გახდები იშვიათი ჰიბრიდი: ფინანსურად განათლებული ინჟინერი, რომელსაც ბაზარი აქტიურად ეძებს.

8 კვირაში

როგორი გრძნობაა B.

პარასკევის შუადღეა. აპლოიდებ შენს ბოლო commit-ს. CI pipeline ატარებს Hardhat-ს შენს კონტრაქტზე — 247 ტესტი, ყველა მწვანე. დაფარვა 100%.

6 თვის წინ კონტრაქტს GitHub-ის რეპოდან დააკოპირებდი, დააფლოიდებდი და ილოცავდი.

დღეს არ ილოცავ. აერთიანებ.

აუდიტორის რეპორტი მომდევნო კვირას მოდის. ორი მცირე gas-ის ოპტიმიზაცია. ნულოვანი კრიტიკული. ნულოვანი მაღალი. ნულოვანი საშუალო. კონტრაქტი mainnet-ზე ვადო სამშაბათს 14:14-ზე. თვის ბოლოს დამუშავებულია $400K ის ბრუნვა ერთი revert-ის გარეშე.

შენი კლიენტის CTO წერს: "ვინ გასწავლა ასე კონტრაქტების წერა?"

უპასუხებ. სწორედ ეს არის 5 თვის სხვაობა.

ლექსიკა, რომელიც ინჟინერს ტუტორიალის მაყურებლისგან გამოყოფს.

სენიორი smart contract ინჟინრები არ ფიქრობენ სინტაქსში. ფიქრობენ არქიტექტურაში, უსაფრთხოების პატერნებსა და gas-ის ეკონომიკაში. 5 ფრეიმვერკი, რომელიც ქვემოთ არის, არის ლექსიკა, რომელსაც ყოველი production Solidity ინჟინერი იყენებს — და სხვაობა, რომელსაც თვითნასწავლი დეველოპერების უმრავლესობა ვერ ხურავს. მე-5 მოდულზე ეს ტერმინები არ უბრალოდ იცი. აშიპავ კოდს, რომელიც ამტკიცებს, რომ მათ ხედავ. ისე, როგორც სენიორი რევიუერი დაწერდა.

ჩარჩორას გეუბნება
EVM არქიტექტურარატომ არის შენი gas-ის შეფასება არასწორი ჯერ კიდევ კომპილაციამდე
Storage / Memory / Calldataსად ცხოვრობს შენი მონაცემები — და რა ჯდება ყოველი ჩაწერა
OOP Solidity-შიროგორ მემკვიდრეობით ჩაიდო ისე, რომ არ ჩაშლა — გადაატრიალო ისე, რომ არ გაგიკვირდეს
SOLID + Design Patternsრატომ ექნება შენს კონტრაქტს მნიშვნელობა შემდეგი ინჟინრისთვისაც
Hardhat Testingრატომ არ ფუჭდება production ისე, როგორც აუდიტი წინასწარ ითქვამდა

იგივე ხელსაწყოები, რომელსაც production Web3 კომპანიებში მუშავე ინჟინრები იყენებენ. მე-5 კვირისთვის გამოიყენებ შენს საკუთარ კონტრაქტებზე — იმ ფინანსური აზროვნებით, რომელსაც ბორისი 10 წლის რეალური კორპორაციული ფინანსებიდან მოაქვს.

20-კვირიანი მოგზაურობა

  1. 'Ethereum არის რაღაც'-დან → თავისუფლად, როგორ ასრულებს EVM შენს კოდს

    შემოდიხარ აზრით, რომ Ethereum ქსელია. გამოდიხარ გაგებით, რომ ეს არის stack-ზე დაფუძნებული ვირტუალური მანქანა, რომელიც bytecode-ს ინტერპრეტაციას უკეთებს, ტრანზაქციის ციკლით, რომელიც ეტაპ-ეტაპად შეგიძლია გასინჯო Etherscan-ზე. მოდულის ბოლოს დააფლოიდებ შენს პირველ კონტრაქტს MetaMask-ით, წაიკითხავ მის bytecode-ს და ახსნი, რატომ არსებობს ABI.

  2. 'Solidity JavaScript-ს ჰგავს'-დან → თავისუფლად, რატომ აბსოლუტურად არ ჰგავს

    დღე, როცა გაიგებ სხვაობას `storage`-ს, `memory`-ს და `calldata`-ს შორის, არის დღე, როცა შეწყვეტ gas-ის ფლანგვას. ამ მოდულის შემდეგ მიხვდები, რომელი როდის გამოიყენო, რატომ არიან `msg.sender` და `block.timestamp` საშიში, როცა არასწორად გამოიყენება, და რატომ ხდის custom errors (Solidity 0.8.4+) production კონტრაქტებს უფრო იაფს და ნათელს, ვიდრე revert სტრინგები.

  3. 'ეს კონტრაქტი დავაკოპირე'-დან → 'ეს კონტრაქტი მემკვიდრეობიდან ავაშენე'

    smart კონტრაქტები არის ობიექტ-ორიენტირებული სისტემები, რომლებიც სკრიპტებად თავს აჩვენებენ. ამ მოდულის შემდეგ გამოიყენებ მრავლობით მემკვიდრეობას diamond-problem-ის კატასტროფის გარეშე, გადაატრიალებ ფუნქციებს `virtual`/`override` keyword-ებით სწორად, და დაუკავშირდები სხვა კონტრაქტებს (Uniswap, ERC-20-ებს, Chainlink) ინტერფეისებით — მათი მთლიანი კოდის იმპორტირების ნაცვლად.

  4. კოდის წერიდან, რომელიც მუშაობს → კოდის წერამდე, რომელიც აუდიტს გადარჩება

    ეს არის მოდული, რომელიც კონტრაქტის ავტორს კონტრაქტის კოპირებისგან გამოყოფს. SOLID პრინციპები — Single Responsibility, Interface Segregation — Solidity-ში გამოყენებული. Ownable / Access Control პატერნი. Checks-Effects-Interactions პატერნი (ის, რომელიც reentrancy შეტევებს არ უშვებს). Factory პატერნი (კონტრაქტები, რომლებიც სხვა კონტრაქტებს ქმნიან). ამ მოდულის შემდეგ, როცა აუდიტორი შენს კოდს გახსნის, მაშინვე ცნობს სტრუქტურას.

  5. 'ჩემს მანქანაზე მუშაობს'-დან → 'mainnet-ზე მუშაობს, მტკიცებულებით'

    Hardhat არის სხვაობა ჰობისტსა და დაქირავებულს შორის. ამ მოდულის შემდეგ კონფიგურაციას გაუკეთებ `hardhat.config.js`-ს მრავლობითი ქსელებისთვის (ლოკალური, testnet, mainnet), დაწერ 100%-იან ტესტის დაფარვას ფინანსური ლოგიკისთვის და გაუშვებ კონტრაქტებს, რომლებსაც ფინანსური აპლიკაციები დაეყრდნობიან. ბოლოს, შენს GitHub პორტფოლიოში გექნება სამი აუდიტირებული კონტრაქტი — და არა სამი ფორკული ტუტორიალი.

ეს კურსი არის იმისთვის, ვისადაც გინდა ინჟინრად გახდე.

შენთვის

  • უყურე 30+ საათის Solidity ტუტორიალს და მაინც ვერ წერ კონტრაქტს ნულიდან, რომელსაც mainnet-ზე ენდობოდი.
  • Web2 დეველოპერი ხარ (Python, JS, Java, Go) და Web3-ის ხელფასები გადასვლას აშკარას ხდის — მაგრამ სასწავლო გზა არასაკმარისად ნათელი.
  • იწყებ ნულიდან და გინდა საფუძველი სწორად ააწყო პირველად, და არა სხვადასხვა blog-პოსტიდან აწებო.
  • ურჩევნია 5 თვე დახარჯო დასაქმებადობის მისაღწევად, ვიდრე 2 წელი იმის, რომ ასეთი ხარ.
  • არ გინდა მხოლოდ კოდის წერა — გინდა გაიგო ფინანსური ლოგიკა, რომელიც კოდის უკან დგას, ისე, როგორც ინჟინრები, რომლებსაც კომპანიები ნამდვილად ეცილებიან დასაქმებას.

შენთვის არა

  • გინდა 'Solidity 7 დღეში' კურსი. ვადებზე არ მოგატყუებთ.
  • გინდა პასიური სწავლება. ყოველ კვირას წერ, ანგრევ და დებაგ უკეთებ რეალურ კონტრაქტებს.
  • გინდა 'მოსაწყენი' ფინანსური ნაწილების გამოტოვება. ისინი არ არის მოსაწყენი — ისინი არის მთელი აზრი. smart კონტრაქტები ჯერ ფინანსური სისტემებია, შემდეგ კოდი.
  • ფიქრობ, ტესტები არასავალდებულოა. არ არის. არ ვამოწმებთ კურსდამთავრებულს, თუ ისინი გამოტოვა.

შენი მალსახმობი.

Boris Solomonia

Boris Solomonia

CFO, რომელიც კოდსაც წერს · წამყვანი ინსტრუქტორი, Solidity Wolf

CFO 9 Tones Distribution-ში. EPAM Systems Java-ს Top 2 of 500. ააშენა ERP სისტემები, MCP სერვერები საქართველოს საგადასახადო სააგენტოსთან (RS.ge) ინტეგრაციით, და AI-ით დაფუძნებული ფინანსური ანალიტიკის ხელსაწყოები. იშვიათი ჰიბრიდი: ფინანსურად განათლებული ინჟინერი.

Solidity Wolf-ით გამოტოვებ წლებს.

წლები კონტრაქტების წერის, რომლებიც კომპილირდებიან, მაგრამ ფუჭდებიან. წლები gas-ის ოპტიმიზაციების დებაგინგის, რომელიც არავინ გასწავლა. წლები კოდის წარდგენის აუდიტორებთან, რომლებიც გიბრუნებენ 40-გვერდიან რეპორტებს შეცდომებზე, რომლებიც შეცდომებად აღქმაც კი არ იცოდი.

მაგრამ უფრო მეტი — გამოტოვებ წლებს *ჩვეულებრივი* დეველოპერი ყოფნის ბაზარზე, რომელიც პრემიას იხდის იშვიათი ჰიბრიდისთვის: ინჟინერი, რომელიც ფინანსებსაც ხედავს.

ეს არის ის, რომელიც ბორისმა გაიარა. და ეს არის უპირატესობა, რომელსაც მისგან სწავლით იღებ.

ბორისი არის ერთი იმ რამდენიმე ინჟინერთაგანი მსოფლიოში, ვინც ცხოვრობს ფინანსებისა და კოდის გადაკვეთაზე:

  • CFO 9 Tones Distribution-ში 2023 წლიდან — ხელმძღვანელობს რეალურ კორპორაციულ ფინანსებს: მარაგების მინიმიზაცია, გაყიდვების პროგნოზირება, ყოველდღიური ოპერაციული dashboard-ები, ROI-ს ოპტიმიზაცია.
  • MBA ბიზნესის ადმინისტრირებაში & ოპერაციულ მენეჯმენტში თავისუფალი უნივერსიტეტი თბილისიდან — დამთავრებული საუკეთესო აკადემიური მიღწევის ჯილდოთი.
  • Top 2 of 500 EPAM Systems-ის Java პროგრამაში — Core Java, Spring Boot, Docker, Kubernetes, ფინანსური მიკრო-პროექტები.
  • ააშენა Debtors Analysis App / ERP Fin-Analytics — AI-ით დაფუძნებული cash-flow პროგნოზი, debtor scoring, ფინანსური რეკომენდაციები.
  • ააშენა MCP სერვერები საქართველოს საგადასახადო სააგენტოსთან (RS.ge) ინტეგრაციით — ავტომატური აღრიცხვის ინფრასტრუქტურა ბიზნესებისთვის, ისეთი სისტემა, რომელსაც ინჟინრების უმრავლესობა ვერ ხედავს, არათუ ააშენებს.
  • არქიტექტურა Enterprise Resource Planning სისტემისა — მართავდა რეალურ ფულის ნაკადებს, მრავალვალუტიან ტრანზაქციებს, რეალურ-დროის ფინანსურ ანალიტიკას PostgreSQL + React + Node.js-ზე.
  • 20+ FP&A საკონსულტაციო ჩართულობა JSC Savvy-ში — შეფასების მოდელები, driver trees, აღმასრულებელი სცენარის ანალიზი, NPV-ის ზრდა, ROI-ს ზრდა, ხარჯების მინიმიზაცია.
  • Java ლექტორი Bitcamp-ში — უკვე უსწავლებია ასობით სტუდენტი ინჟინრებივით აზროვნებას.

Solidity-ის უმეტეს მასწავლებლებმა Solidity იციან. ბორისმა იცის, რა ხდის ფინანსურ სისტემას რეალურად სამუშაოს — და ახლა გასწავლის მათ აშენებას Solidity-ში ისე, როგორც უნდა აშენდეს.

როცა ბორისი შენს კონტრაქტს გადახედავს, ის მხოლოდ კოდს არ ხედავს. ხედავს ფინანსურ ლოგიკას კოდის უკან — ისე, როგორც CFO გააკეთებდა. ეს არის უპირატესობა, რომელსაც სხვაგან ვერ მიიღებ.

ეწვიე საიტს

წარსული შესრულება ასახავს ბორისის პროფესიულ საინჟინრო და ფინანსურ მუშაობას — არ არის სტუდენტების შედეგების გარანტია. Smart contract დეველოპმენტი არის მაღალი უნარის სფერო, რომელიც მუდმივ პრაქტიკას მოითხოვს.

შექმნილი ისე, რომ ვერ შეუშლის ხელს გაშვებას.

  • მოდი ისე, როგორც შეგიძლია

    თბილისის ოფისი ან Microsoft Teams — იგივე სესია, იგივე ინსტრუქტორი, შენი არჩევანი. რადგან ყველაზე ცუდი მიზეზი, რის გამოც შეიძლება გამოტოვო კარიერული ცვლილება, გეოგრაფიაა.

  • აშიპავ რეალურ კონტრაქტებს

    თეორია კარიერას არ ცვლის. ცვლის გაშვებული კოდი. მე-3 მოდულზე უშვებ რეალურ კონტრაქტებს testnet-ზე. მე-5 მოდულზე გაქვს სამი production კლასის კონტრაქტი GitHub-ზე.

  • კოდის რევიუ CFO-სგან, რომელიც კოდსაც წერს

    ჩაწერილი კურსი ვერ გეტყვის, რატომ არის შენი `storage` pointer bug. ბორისს შეუძლია — და გეტყვის, რატომ არის შენი *ფინანსური ლოგიკა* უფრო დიდი bug. ეს რევიუ უფრო ახლოსაა რეალურ აუდიტთან, ვიდრე ყველაფერი, რასაც mainnet-მდე მიიღებ.

  • პორტფოლიო, რომელიც ინტერვიუს გადარჩება

    სხვა სერტიფიკატები სერვერზე ცხოვრობენ, რომელიც ვინმემ შეიძლება გათიშოს. შენი — Arweave-ზე სამუდამოდ. სამ GitHub-საჯარო smart კონტრაქტთან ერთად, რომლებიც ამტკიცებენ, რომ არ ფორკი არ ჩაიდინე. დღე, როცა CTO გახსნის, შენი ინტერვიუ ფორმალობად იქცევა.

წინაპირობები

წინასწარი გამოცდილება არ არის საჭირო.

გაკვეთილები

მალე

გაკვეთილების შინაარსი ხელმისაწვდომი გახდება, როცა კურსი ამოქმედდება დეშბორდში.

ხშირად სვამენ კითხვებს

დასრულების სერტიფიკატი

მალე

დადასტურებული კრედენციალი

Solidity Wolf

გაცემულიაშენი სახელი გამოჩნდება აქ
Arweave-ით დადასტურებულიმუდმივი ჩანაწერი ბლოკჩეინზე

მიიღე ბლოკჩეინზე დადასტურებული სერტიფიკატი, რომელიც სამუდამოდ ინახება Arweave-ში, კურსის დასრულების შემდეგ. სერტიფიკატები უკვე ამუშავებულია ძველ საიტზე; დეშბორდიდან გაცემა LMS-თან ერთად ამოქმედდება.

მათემატიკა.

ერთი აუმოწმებელი reentrancy bug ჯდება ამაზე უფრო მეტი, ვიდრე მთელი კურსი. ხშირად 10x-ზე მეტი.

DAO hack იყო $60M. Wormhole — $325M. bZx-ის ინციდენტები — სულ $80M. ეს არ იყო ეგზოტიკური exploits — ეს იყო პატერნები, რომლებიც წლების განმავლობაში დოკუმენტირებული იყო, კოდში ჩაწერილი დეველოპერების მიერ, რომლებსაც არ ესწავლებინათ, რის ძებნაც სჭირდებოდა.

Solidity Wolf ღირს ₾2,200 (750 PUSDT). Junior Web3 ინჟინრის ხელფასი თბილისში იწყება დაახლოებით $40,000/წელიწადში. Mid-level როლი — დაახლოებით $70,000. გლობალურად, remote Web3 ინჟინრობა იხდის $80,000-150,000-ს იმისთვის, ვისაც სამი აუდიტირებული კონტრაქტი აქვს პორტფოლიოში.

მაგრამ იშვიათი ჰიბრიდი — ინჟინერი, რომელსაც ფინანსურ ლოგიკაზეც აზროვნება შეუძლია — იშოვის იმ დიაპაზონების ზევით. რადგან სწორედ ასეთ ინჟინერს იხდის კომპანიები პრემიას.

კურსი თავის ფასს ანაზღაურებს იმ დღეს, როცა შენს პირველ Web3 შეთავაზებას მიიღებ. ყველაფერი შემდეგ — შენი დანარჩენი კარიერაა.

5 თვის შემდეგ.

გზა A

გზა A — ისევ უყურებ ტუტორიალებს 1.5x სიჩქარით. ისევ აკოპირებ კონტრაქტებს GitHub-იდან და ლოცულობ, რომ იმუშაოს. ისევ ეუბნები საკუთარ თავს, რომ Web3-ზე გადახვალ 'ამ პროექტის შემდეგ'. ისევ კითხულობ 'junior Solidity developer' სამუშაოს განცხადებებს და თავი იმპოსტერად გრძნობს. შემდეგი bull run მოდის — და უყურებ, როგორ უშვებენ შენი მეგობრები, სანამ შენ ისევ აკოპირებ.

გზა B

გზა B — შენს GitHub-ზე გაქვს სამი აუდიტირებული კონტრაქტი. შეგიძლია ახსნა, რატომ არის ყოველი ხაზი ისე, როგორც არის — და რატომ აქვს მნიშვნელობა ფინანსურ ლოგიკას. როცა CTO გეუბნება 'მაჩვენე პორტფოლიო', არ ბოდიში — აგზავნი link-ს. როცა რეკრუტერი გეუბნება 'Hardhat იცი?', შენი პასუხი არ იწყება სიტყვით 'ცოტა' — იწყება სიტყვით 'კი, აი კონტრაქტი, რომელიც გავუშვი 100%-იანი ტესტის დაფარვით, CFO-ს მიერ გადახედილი.' შენ არ ცდილობ Web3-ში შეჭრას. შენ აშენებ მას.

5 თვე ჰყოფს ორ გზას. ბაზარი არ ჩერდება, სანამ წყვეტ.