{"id":51,"date":"2026-08-02T11:48:45","date_gmt":"2026-08-02T11:48:45","guid":{"rendered":"https:\/\/journey.fransiskaamir.com\/?p=51"},"modified":"2026-08-02T12:57:29","modified_gmt":"2026-08-02T12:57:29","slug":"day-01-step-02","status":"publish","type":"post","link":"https:\/\/journey.fransiskaamir.com\/?p=51","title":{"rendered":"Day 01 &#8211; Step 02"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Hari Ini Belajar Cursor, uv, dan OpenAI API<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hari ini, video Ed Donner yang saya simak membahas pengaturan awal Cursor dan <code>uv<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tentu saja muncul pertanyaan di kepala saya.Barang apa lagi <code>uv<\/code> itu?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ed tidak menjelaskannya secara mendala, selain ini ada kaitannya dengan Python. Jadi saya bertanya kepada ChatGPT. Tadinya saya pikir  <code>uv<\/code> ini semacam paket kumpulan library Python. Ternyata bukan. <code>uv<\/code> adalah alat untuk mengelola berbagai kebutuhan dalam pengembangan Python. Mulai dari instalasi package, pembuatan virtual environment, pengelolaan dependensi, hingga pengaturan versi Python.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sederhananya, <code>uv<\/code> membantu kita mengelola \u201cruang kerja\u201d Python dengan lebih cepat dan praktis. Beberapa fungsi yang sebelumnya dijalankan menggunakan alat terpisah, seperti <code>pip<\/code>, <code>venv<\/code>, atau package manager lainnya, dapat ditangani melalui satu alat ini.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Saya kemudian teringat ketika pertama kali mengikuti video ini dan mencoba mengatur environment menggunakan Anaconda. Langkah-langkahnya terasa panjang sekali. Saya memang berhasil mengikuti instruksinya, tetapi belum benar-benar memahami apa yang sedang saya kerjakan dan bagaimana setiap layer saling terhubung.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Menurut Ed, <code>uv<\/code> dapat menjadi alternatif yang lebih cepat dan ringan dibandingkan Anaconda untuk workflow yang digunakan dalam pembelajaran ini. Bukan berarti keduanya sepenuhnya sama, tetapi <code>uv<\/code> dapat menyederhanakan banyak pekerjaan dalam pengelolaan environment dan dependensi Python.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So far, memang apa yang saya install di laptop saya bekerja. Tapi saya merasa masih ada keping puzzle yang tidak saya miliki dalam membangun pemahaman AI Engineering yang utuh di kepala saya. Dan ini menjengkelkan sekali.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anyway, setelah itu, di video ini kita diarahkan ke <code>platform.openai.com<\/code>. Di sinilah kita dapat membuat API key dan mengatur billing untuk menggunakan layanan OpenAI melalui aplikasi atau kode program. Kita bukan membeli API key. API key berfungsi sebagai identitas atau kunci akses, sedangkan biaya dikenakan berdasarkan penggunaan API.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada video berikutnya, kami diminta memasang Python extension di Cursor. Awalnya saya menangkap bahwa extension ini membuat kode lebih mudah ditelusuri karena teksnya otomatis tampil dalam warna yang berbeda.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Namun, fungsinya ternyata lebih luas daripada sekadar memberi warna pada kode. Python extension juga membantu mengenali struktur program, memberikan saran penulisan kode, mendeteksi kesalahan, memilih environment Python, dan menjalankan proses debugging.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sedikit demi sedikit, saya mulai melihat susunan layer-nya.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cursor menjadi tempat saya menulis dan menjalankan kode.<\/li>\n\n\n\n<li>Python extension membantu Cursor memahami kode Python.<\/li>\n\n\n\n<li><code>uv<\/code> mengelola Python, environment, dan package yang dibutuhkan.<\/li>\n\n\n\n<li>OpenAI API menghubungkan program yang dibuat dengan model AI milik OpenAI.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Dulu, semua ini terlihat seperti sekumpulan aplikasi dan perintah yang berdiri sendiri. Sekarang, gambar besarnya mulai terbentuk. Belum sepenuhnya jelas, tetapi setidaknya setiap alat mulai menemukan tempatnya dalam puzzle yang sedang saya susun di kepala saya.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hari Ini Belajar Cursor, uv, dan OpenAI API Hari ini, video Ed Donner yang saya simak membahas pengaturan awal Cursor dan uv. Tentu saja muncul pertanyaan di kepala saya.Barang apa lagi uv itu? Ed tidak menjelaskannya secara mendala, selain ini ada kaitannya dengan Python. Jadi saya bertanya kepada ChatGPT. Tadinya saya pikir uv ini semacam [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":58,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-container-style":"default","site-container-layout":"default","site-sidebar-layout":"default","disable-article-header":"default","disable-site-header":"default","disable-site-footer":"default","disable-content-area-spacing":"default","footnotes":""},"categories":[2,4],"tags":[],"class_list":["post-51","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-engineering","category-become-llm-engineer-8-weeks"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Day 01 - Step 02 - My Learning Journey<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/journey.fransiskaamir.com\/?p=51\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Day 01 - Step 02 - My Learning Journey\" \/>\n<meta property=\"og:description\" content=\"Hari Ini Belajar Cursor, uv, dan OpenAI API Hari ini, video Ed Donner yang saya simak membahas pengaturan awal Cursor dan uv. Tentu saja muncul pertanyaan di kepala saya.Barang apa lagi uv itu? Ed tidak menjelaskannya secara mendala, selain ini ada kaitannya dengan Python. Jadi saya bertanya kepada ChatGPT. Tadinya saya pikir uv ini semacam [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/journey.fransiskaamir.com\/?p=51\" \/>\n<meta property=\"og:site_name\" content=\"My Learning Journey\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-02T11:48:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-02T12:57:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/#\\\/schema\\\/person\\\/3cb32128453ec8bf4dbbe2cb4564dd25\"},\"headline\":\"Day 01 &#8211; Step 02\",\"datePublished\":\"2026-08-02T11:48:45+00:00\",\"dateModified\":\"2026-08-02T12:57:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51\"},\"wordCount\":409,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/6088980990035871853-1.jpg\",\"articleSection\":[\"AI Engineering\",\"Become an LLM Engineer in 8 Weeks Journey\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51\",\"url\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51\",\"name\":\"Day 01 - Step 02 - My Learning Journey\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/6088980990035871853-1.jpg\",\"datePublished\":\"2026-08-02T11:48:45+00:00\",\"dateModified\":\"2026-08-02T12:57:29+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/#\\\/schema\\\/person\\\/3cb32128453ec8bf4dbbe2cb4564dd25\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#primaryimage\",\"url\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/6088980990035871853-1.jpg\",\"contentUrl\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/6088980990035871853-1.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?p=51#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Day 01 &#8211; Step 02\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/#website\",\"url\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/\",\"name\":\"My Learning Journey\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/#\\\/schema\\\/person\\\/3cb32128453ec8bf4dbbe2cb4564dd25\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"sameAs\":[\"https:\\\/\\\/journey.fransiskaamir.com\"],\"url\":\"https:\\\/\\\/journey.fransiskaamir.com\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Day 01 - Step 02 - My Learning Journey","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/journey.fransiskaamir.com\/?p=51","og_locale":"en_US","og_type":"article","og_title":"Day 01 - Step 02 - My Learning Journey","og_description":"Hari Ini Belajar Cursor, uv, dan OpenAI API Hari ini, video Ed Donner yang saya simak membahas pengaturan awal Cursor dan uv. Tentu saja muncul pertanyaan di kepala saya.Barang apa lagi uv itu? Ed tidak menjelaskannya secara mendala, selain ini ada kaitannya dengan Python. Jadi saya bertanya kepada ChatGPT. Tadinya saya pikir uv ini semacam [&hellip;]","og_url":"https:\/\/journey.fransiskaamir.com\/?p=51","og_site_name":"My Learning Journey","article_published_time":"2026-08-02T11:48:45+00:00","article_modified_time":"2026-08-02T12:57:29+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/journey.fransiskaamir.com\/?p=51#article","isPartOf":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51"},"author":{"name":"admin","@id":"https:\/\/journey.fransiskaamir.com\/#\/schema\/person\/3cb32128453ec8bf4dbbe2cb4564dd25"},"headline":"Day 01 &#8211; Step 02","datePublished":"2026-08-02T11:48:45+00:00","dateModified":"2026-08-02T12:57:29+00:00","mainEntityOfPage":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51"},"wordCount":409,"commentCount":0,"image":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51#primaryimage"},"thumbnailUrl":"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg","articleSection":["AI Engineering","Become an LLM Engineer in 8 Weeks Journey"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/journey.fransiskaamir.com\/?p=51#respond"]}]},{"@type":"WebPage","@id":"https:\/\/journey.fransiskaamir.com\/?p=51","url":"https:\/\/journey.fransiskaamir.com\/?p=51","name":"Day 01 - Step 02 - My Learning Journey","isPartOf":{"@id":"https:\/\/journey.fransiskaamir.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51#primaryimage"},"image":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51#primaryimage"},"thumbnailUrl":"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg","datePublished":"2026-08-02T11:48:45+00:00","dateModified":"2026-08-02T12:57:29+00:00","author":{"@id":"https:\/\/journey.fransiskaamir.com\/#\/schema\/person\/3cb32128453ec8bf4dbbe2cb4564dd25"},"breadcrumb":{"@id":"https:\/\/journey.fransiskaamir.com\/?p=51#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/journey.fransiskaamir.com\/?p=51"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/journey.fransiskaamir.com\/?p=51#primaryimage","url":"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg","contentUrl":"https:\/\/journey.fransiskaamir.com\/wp-content\/uploads\/2026\/08\/6088980990035871853-1.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/journey.fransiskaamir.com\/?p=51#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/journey.fransiskaamir.com\/"},{"@type":"ListItem","position":2,"name":"Day 01 &#8211; Step 02"}]},{"@type":"WebSite","@id":"https:\/\/journey.fransiskaamir.com\/#website","url":"https:\/\/journey.fransiskaamir.com\/","name":"My Learning Journey","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/journey.fransiskaamir.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/journey.fransiskaamir.com\/#\/schema\/person\/3cb32128453ec8bf4dbbe2cb4564dd25","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9f53b753197cbdb1707db875a3d4ce0ca9aaf22b729aa47e6a3c41c5a0ffa38a?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/journey.fransiskaamir.com"],"url":"https:\/\/journey.fransiskaamir.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/posts\/51","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=51"}],"version-history":[{"count":1,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/posts\/51\/revisions"}],"predecessor-version":[{"id":52,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/posts\/51\/revisions\/52"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=\/wp\/v2\/media\/58"}],"wp:attachment":[{"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=51"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=51"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/journey.fransiskaamir.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=51"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}