{"@attributes":{"version":"2.0"},"channel":{"title":"if1live space","link":"https:\/\/if1live.github.io\/","description":"Recent content on if1live space","generator":"Hugo -- gohugo.io","language":"ko-kr","lastBuildDate":"Mon, 25 Dec 2023 00:00:00 +0900","item":[{"title":"SQS \ube44\uc6a9 \uc9c0\ubd88\ud558\uc9c0 \uc54a\uace0 AWS Lambda\uc758 SQS \ud578\ub4e4\ub7ec \ud638\ucd9c\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/karin-post-mortem\/","pubDate":"Mon, 25 Dec 2023 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/karin-post-mortem\/","description":"\uc800\uc7a5\uc18c karin \ucd94\uc0c1\uc801 \ubaa9\ud45c \ud2b9\uc815 \uc774\ubca4\ud2b8 \uc18c\uc2a4(event source)\ub97c polling, \ub610\ub294 \uc2a4\uc2a4\ub85c\uac00 \uc774\ubca4\ud2b8 \uc18c\uc2a4\ub85c \uc791\ub3d9 \uc774\ubca4\ud2b8\uac00 \ubc1c\uc0dd\ud588\uc744\ub54c \ub300\uc751\ub418\ub294 AWS Lambda \ud568\uc218\ub97c \ud638\ucd9c \ub354 \uc694\uc57d\ud558\uba74"},{"title":"\ud504\ub9ac\ud2f0\uc5b4 \uc11c\ube44\uc2a4\uac00 \uc7a0\ub4e4\uc9c0 \uc54a\uac8c \ud558\uae30, \uadf8\ub9ac\uace0 discord\uc758 \uac00\ub2a5\uc131","link":"https:\/\/if1live.github.io\/posts\/ayane-post-mortem\/","pubDate":"Sun, 24 Dec 2023 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/ayane-post-mortem\/","description":"github \ubaa9\ud45c free tier\uc758 \ub300\uac00: sleeping Supabase, PlanetScale\uc740 \ubb34\ub8cc \uc11c\ube44\uc2a4\ub97c \uc81c\uacf5\ud558\ub294 \uc88b\uc740 \ubb3c\uac74\uc774\ub2e4. \ud558\uc9c0\ub9cc \ubb34\ub8cc\uc5d0\ub294 \ub300\uac00\uac00 \uc788\ub2e4. Free projects are paused after 1 week of inactivity. https:\/\/supabase.com\/pricing When a database on"},{"title":"localhost\ub97c \uc704\ud55c serverless-standalone","link":"https:\/\/if1live.github.io\/posts\/serverless-standalone-for-localhost\/","pubDate":"Sat, 23 Dec 2023 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/serverless-standalone-for-localhost\/","description":"serverless-standalone? \uc774\uc804\uc5d0 serverless-offline \uc5c6\uc774 AWS Lambda \ud568\uc218\ub97c \ub85c\uceec\uc5d0\uc11c \uc2e4\ud589\ud558\ub294 \ubc29\ubc95\uc774\ub77c\ub294 \uae00\uc744 \uc37b\ub2e4. serverless-standalone\uc740 \uc704\uc758 \uac1c\ub150\uc744 \uad6c\ud604\ud55c \ud504\ub85c\uc81d\ud2b8\uc774\ub2e4. github: https:\/\/github.com\/if1live\/serverless-standalone npm:"},{"title":"isEmpty(null)\uc758 \ub9ac\ud134 \uac12\uc740?","link":"https:\/\/if1live.github.io\/posts\/return-value-of-is-empty-null\/","pubDate":"Tue, 01 Aug 2023 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/return-value-of-is-empty-null\/","description":"isEmpty(null) \uc61b\ub0a0 \uc61b\uc801\uc5d0 lodash\ub97c \uc0ac\uc6a9\ud574\uc11c \uc544\ub798\uc640 \uac19\uc740 \ud568\uc218\ub97c \ub9cc\ub4e4\uc5c8\ub2e4. \/** * prev\ub97c next\uc758 \ubd80\ubd84\uc744 Partial&lt;CharacterModel"},{"title":"\uc21c\uc218 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc0ac\uc6a9\ud574\uc57c\ub418\ub294 \uc774\uc720, \uadf8\ub9ac\uace0 ioredis","link":"https:\/\/if1live.github.io\/posts\/why-use-pure-typescript-library-ioredis\/","pubDate":"Sun, 30 Jul 2023 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/why-use-pure-typescript-library-ioredis\/","description":"ioredis \uc791\uc131\uc77c \uae30\uc900\uc73c\ub85c ioredis\ub294 2\uac1c\uc758 \uba54\uc774\uc800 \ubc84\uc804\uc774 \uc0b4\uc544\uc788\ub2e4. ioredis v4 v4 \ub9c8\uc9c0\ub9c9 \ubc84\uc804: v4.28.5 2022-02-06 ioredis v5 v5 \uc791\uc131\uc77c \uae30\uc900 \ucd5c\uc2e0 \ubc84\uc804: v5.3.2 2023-04-15 v5 \uccab\ubc88\uc9f8 \uc548\uc815 \ub9b4\ub9ac\uc988: v5.0.0 2022-03-26 \uc5ec\ub7ec"},{"title":"2023-07-17 \uc77c\uae30: \uc751...\uc2dc\ub85c\ucf54...\ub0b4\uaebc","link":"https:\/\/if1live.github.io\/posts\/diary-2023-07-17-shiroko-ne-kr\/","pubDate":"Mon, 17 Jul 2023 00:01:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/diary-2023-07-17-shiroko-ne-kr\/","description":"serverless x AWS Lambda \ub098\ub294 AWS Lambda\ub97c \ub9e4\uc6b0 \uc88b\uc544\ud55c\ub2e4. \ud558\ub098, \uc11c\ube44\uc2a4\uc5d0 \uc7a5\uc560\uac00 \ub0ac\uc744\ub54c \ud560 \uc218 \uc788\ub294\uac8c \uc544\ubb34 \uac83\ub3c4 \uc5c6\ub2e4. AWS Health Dashboard \ub4e4\uc5b4\uac00\uc11c \ub78c\ub2e4\uac00 \uc8fd\uc740\uac8c \uc7a5\uc560\uc758 \uc6d0\uc778\uc73c\ub85c \ud30c\uc545\ub41c \ud6c4"},{"title":"\ubc29\uc1a1\ub300 \ud3ec\uc2a4\ud2b8\ubaa8\ud15c - \uc804\uacf5","link":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-4-major\/","pubDate":"Mon, 10 Jul 2023 00:01:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-4-major\/","description":"\uc8fc\uc758 \uc774\ubc88 \uae00\uc740 \uc8fc\uad00\uc801\uc778 \ub0b4\uc6a9\uc774\ub2e4. \uae00\uc4f0\uae30 \uc5b4\ub824\uc6b4 \uc8fc\uc81c\ub77c\uc11c \uc4f8\uae4c \ub9d0\uae4c \uace0\ubbfc\ud588\ub294\ub370 \uc2dc\uac04\ucc28\ub97c \ub450\uace0 \ud559\uc0ac \ub450 \ubc88 \ud574\ubd10\uc57c \ubcf4\uc774\ub294 \uc8fc\uc81c\uac19\uc544\uc11c \uc368\ubcf8\ub2e4. \ub0b4\uac00 \ud558\ub294 \ub9d0\uc774 \ud2c0\ub838\ub2e4\uace0 \uc0dd"},{"title":"\ubc29\uc1a1\ub300 \ud3ec\uc2a4\ud2b8\ubaa8\ud15c - \ube44\uc6a9","link":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-3-cost\/","pubDate":"Sun, 09 Jul 2023 00:01:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-3-cost\/","description":"\uac1c\uc694 \uc774\ubc88 \uc8fc\uc81c\ub294 \uc878\uc5c5\uae4c\uc9c0 \ub4e4\uc5b4\uac04 \ube44\uc6a9\uc774\ub2e4. \ubb34\uc5c7\uc744 \ubc30\uc6e0\ub294\uc9c0\uc5d0 \ub300\ud574\uc11c \uc0dd\uac01\ud558\ub294\uac83\ub3c4 \uc911\uc694\ud558\uc9c0\ub9cc \uc5bc\ub9c8\ub97c \uc37b\ub294\uc9c0 \uc5ed\uc2dc \uc911\uc694\ud558\ub2e4. \uac1c\ubc1c\uc790 \ubd80\ud2b8\ucea0\ud504\uc758 \uad50\uc721\ube44\uc640 \uad00\ub828\ub41c \ub17c"},{"title":"\ubc29\uc1a1\ub300 \ud3ec\uc2a4\ud2b8\ubaa8\ud15c - \ud0c0\uc784\ub77c\uc778","link":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-2-timeline\/","pubDate":"Sat, 08 Jul 2023 00:02:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-2-timeline\/","description":"\uac1c\uc694 \uc624\ud504\ub77c\uc778 \ub300\ud559\uad50\ub97c \ub2e4\ub2d0\ub54c\ub294 \uacf5\ubd80\ub9cc \ud558\ub2c8\uae4c \ubcf5\uc7a1\ud55c \uc77c\uc774 \ubc8c\uc5b4\uc9c0\uc9c0 \uc54a\uc558\ub2e4. \ubc29\uc1a1\ub300\ub97c \ub2e4\ub2c8\ub294 \ub3d9\uc548\uc5d0\ub294 \ud68c\uc0ac\ub3c4 \ub2e4\ub140\uc11c \ub9ce\uc740 \uc77c\uc774 \uc788\uc5c8\ub2e4. \uadf8\ub9ac\uace0 \ud68c\uc0ac\uc870\ucc28 \ub0a8\ub4e4\uc774 \uc6ec\ub9cc"},{"title":"\ubc29\uc1a1\ub300 \ud3ec\uc2a4\ud2b8\ubaa8\ud15c - \ub3d9\uae30","link":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-1-reason-i-applied\/","pubDate":"Sat, 08 Jul 2023 00:01:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/knou-post-mortem-1-reason-i-applied\/","description":"\uacbd\uc81c\ud559\uacfc \uc878\uc5c5 \uac00\ub2a5 2021\ub144 1\ud559\uae30\uc5d0 \ud55c\uad6d\ubc29\uc1a1\ud1b5\uc2e0\ub300\ud559\uad50 \uacbd\uc81c\ud559\uacfc\ub85c 3\ud559\ub144 \ud3b8\uc785\ud588\ub2e4. \uadf8\ub9ac\uace0 2023\ub144 7\uc6d4 7\uc77c, \ub4dc\ub514\uc5b4 \uc878\uc5c5\uac00\ub2a5 \uc5ec\ubd80\uac00 \uac00\ub2a5\uc774 \ub418\uc5c8\ub2e4. \uc878"},{"title":"lodash \ud0c8\ucd9c\uae30 - remeda\uc758 \ud2c8\uc744 \ub9c9\uc544\ub77c","link":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-just\/","pubDate":"Sat, 17 Jun 2023 00:02:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-just\/","description":"\uac1c\uc694 \uc774\uc804 \uae00\uc5d0\uc11c lodash\ub97c remeda\ub85c \uad50\uccb4\ud55c \uc774\uc57c\uae30\ub97c \ud588\ub2e4. \uadf8\ub9ac\uace0 remeda\uac00 lodash\ub97c 100% \ub300\uccb4\ud560 \uc218 \uc5c6\ub2e4\ub294 \uac83\ub3c4 \uc5b8\uae09\ud588\ub2e4. \uc774\ubc88 \uae00\uc5d0\uc11c\ub294 r"},{"title":"lodash \ud0c8\ucd9c\uae30 - lodash\uc758 \ub300\uc548\uacfc \uacb0\uc815","link":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-remeda\/","pubDate":"Sat, 17 Jun 2023 00:01:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-remeda\/","description":"\uac1c\uc694 \uc774\uc804 \uae00\uc5d0\uc11c lodash\ub97c \ud0c8\ucd9c\ud558\uac8c\ub41c \ub3d9\uae30\ub97c \ub2e4\ub918\ub2e4. \uc774\ubc88\uc5d0\ub294 \uac80\ud1a0\ud574 \ubcf8 \ud6c4\ubcf4\ub4e4\uacfc \uc120\ud0dd\ub418\uc9c0 \uc54a\uc740 \uc774\uc720, \ucd5c\uc885 \uc120\ud0dd\uc744 \ub2e4\ub8ec\ub2e4. \uc694\uad6c\uc0ac\ud56d (A) \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\ub85c \uc791\uc131"},{"title":"lodash \ud0c8\ucd9c\uae30 - \uc65c lodash\uc5d0\uc11c \ubc97\uc5b4\ub098\ub294\uac00?","link":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-why-i-escape\/","pubDate":"Sat, 17 Jun 2023 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-lodash-why-i-escape\/","description":"lodash\ub97c 2023\ub144\uae4c\uc9c0 \uc4f0\uac8c\ub41c \uc774\uc720 \ub0b4\uac00 \uc6f9\uac1c\ubc1c\ub85c \ucc98\uc74c \uba39\uace0 \uc0b4\uae30 \uc2dc\uc791\ud55c\uac74 2010\ub144\uc774\ub2e4. IE 6,7,8\uc744 \uc804\ubd80 \uc9c0\uc6d0\ud574\uc57c\ub418\ub294 \uc2dc\uc808\uc774\uc5c8\ub2e4. \uadf8\ub54c \uadf8 \uc2dc\uc808 \uc790"},{"title":"serverless-offline \uc5c6\uc774 AWS Lambda \ud568\uc218\ub97c \ub85c\uceec\uc5d0\uc11c \uc2e4\ud589\ud558\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/emulate-aws-lambda-function-locally-without-serverless-offline\/","pubDate":"Thu, 30 Mar 2023 20:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/emulate-aws-lambda-function-locally-without-serverless-offline\/","description":"serverless-offline: \uc7a5\uc810 Serverless Offline\ub294 AWS Lambda\uc5d0 \ubc30\ud3ec\ud558\uc9c0 \uc54a\uace0 \ud568\uc218\ub97c \ub85c\uceec\ud638\uc2a4\ud2b8\uc5d0\uc11c \ud14c\uc2a4\ud2b8\ud574\ubcfc\uc218 \uc788\ub294 \uc88b\uc740 \ud234\uc774\ub2e4. serverless offline \ubb38\uc11c\uc5d0 \uc758\ud558\uba74 Node.js, Python, Ruby, Go, Java\uc744 \ud14c\uc2a4\ud2b8"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 interface\uc5d0 \uc815\uc801 \ud568\uc218, \ud0c0\uc785 \ub07c\uc6cc\ub123\uae30","link":"https:\/\/if1live.github.io\/posts\/inject-static-method-into-typescript-interface\/","pubDate":"Thu, 16 Feb 2023 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/inject-static-method-into-typescript-interface\/","description":"\uc694\uad6c \uc0ac\ud56d \uc778\ud130\ud398\uc774\uc2a4\uc5d0 \uc815\uc801 \ud568\uc218\ub97c \ub123\uace0 \uc2f6\ub2e4. interface A { x: number; \/\/ compile error static add(data: A, input: number) { return data.x &#43; input; } } Add support Interfaces to define static methods #13462 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 interface\uc5d0 \uc815\uc801 \ud568\uc218\ub97c \ub123"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc758 \ubc30\uc2e0 - property\uc640 spread syntax","link":"https:\/\/if1live.github.io\/posts\/betrayal-of-typescript-property-and-spread-syntax\/","pubDate":"Tue, 07 Feb 2023 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/betrayal-of-typescript-property-and-spread-syntax\/","description":"\uc900\ube44\ubb3c property \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc758 class\ub85c \uac1d\uccb4\uc758 getter, setter \ud504\ub85c\ud37c\ud2f0\ub97c \ub9cc\ub4e4\uc218 \uc788\ub2e4. class Rectangle { constructor(height, width) { this.height = height; this.width = width; } \/\/ Getter get area() { return this.calcArea(); } } spread syntax \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\ub294 \uc804\uac1c \uad6c\ubb38,"},{"title":"2016\ub144 hugo\ub97c 2023\ub144 hugo\ub85c \ub9c8\uc774\uadf8\ub808\uc774\uc158 \ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/migration-hugo-from-2016-to-2023\/","pubDate":"Thu, 02 Feb 2023 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/migration-hugo-from-2016-to-2023\/","description":"\uacc4\uae30 \uba87 \uac1c\uc6d4 \uc804\uc5d0 \uad6c\uae00 \uc560\ub110\ub9ac\uc2a4\ud2f1\uc5d0 \uc811\uc18d\ud588\ub354\ub2c8 \uc544\ub798\uc640 \uac19\uc740 \uacbd\uace0\uac00 \ub5b3\ub2e4. \uc720\ub2c8\ubc84\uc124 \uc560\ub110\ub9ac\ud2f1\uc2a4\ub294 2023\ub144 7\uc6d4 1\uc77c\ubd80\ud130 \ud45c\uc900 \uc18d\uc131\uc758 \uc2e0\uaddc \ub370\uc774\ud130\ub97c \ub354 \uc774\uc0c1 \ucc98\ub9ac\ud558\uc9c0"},{"title":"shiroko-kfcc \uac1c\ubc1c \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/shiroko-kfcc-post-mortem\/","pubDate":"Sun, 08 Jan 2023 21:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/shiroko-kfcc-post-mortem\/","description":"\uac1c\uc694 shiroko-kfcc\ub294 \uc0c8\ub9c8\uc744\uae08\uace0\uc758 \uc608\uae08, \uc801\uae08 \uae08\ub9ac\ub97c \ubcf4\ub824\uace0 \ub9cc\ub4e0 \uc11c\ube44\uc2a4\uc774\ub2e4. \uc800\uc7a5\uc18c \uc8fc\uc18c\ub294 if1live\/shiroko-kfcc\uc774\ub2e4. \uc774"},{"title":"TypeORM\uacfc Knex \uac19\uc774 \uc4f0\uae30","link":"https:\/\/if1live.github.io\/posts\/typeorm-knex-integration\/","pubDate":"Sun, 25 Sep 2022 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/typeorm-knex-integration\/","description":"\uc694\uad6c\uc0ac\ud56d \ub370\uc774\ud130\ubca0\uc774\uc2a4\uac00 \uc5c6\ub294 \ubc31\uc5d4\ub4dc\ub294 \uc0c1\uc0c1\ud558\uae30 \uc5b4\ub835\ub2e4. \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \ub370\uc774\ud130\ubca0\uc774\uc2a4, \uadf8\uc911\uc5d0\uc11c\ub3c4 RDBMS\ub97c \uc4f0\uac8c \ub41c\ub2e4\uba74 query builder, ORM \uac19\uc740 \ubb3c\uac74\uc744 \ud53c\ud560 \uc218 \uc5c6\ub2e4. \uc774 \uae00"},{"title":"JWT\ub97c \uc0ac\uc6a9\ud574\uc11c server-to-server API \uc5c6\uc560\ub294 \uc548\ud2f0\ud328\ud134","link":"https:\/\/if1live.github.io\/posts\/anti-pattern-using-jwt-to-remove-server-to-server-api\/","pubDate":"Mon, 22 Aug 2022 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/anti-pattern-using-jwt-to-remove-server-to-server-api\/","description":"\uc624\ub298 SNS\uc5d0\uc11c JWT, OAuth, access token, refresh token\uc5d0 \ub300\ud574\uc11c \uc774\uc57c\uae30\ud558\ub294\uac78 \ubd24\ub2e4. \ub098\ub294 \ubcf4\uc548\uc5d0 \ub300\ud574\uc11c\ub294 \ubb34\uc2dd\ud574\uc11c OAuth, access token, refresh token \ub85c\ub294 \uc544\ubb34 \uc774\uc57c\uae30\ub3c4 \ud560 \uc218 \uc5c6\ub2e4. \ud558\uc9c0\ub9cc JWT\ub85c\ub294 \uc5b4"},{"title":"serverless \ubc30\ud3ec\ud558\uae30 (5) \ucd5c\uc18c\ud55c\uc758 \uc124\uc815\ud30c\uc77c\ub85c \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 \ud568\uc218 \ubc30\ud3ec\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/deploying-serverless-5-zero-configuration\/","pubDate":"Sat, 20 Aug 2022 23:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/deploying-serverless-5-zero-configuration\/","description":"\uc774\uc804\uae00\uc5d0\uc11c\ub294 \ube4c\ub4dc, \ud328\ud0a4\uc9d5 \uacfc\uc815\uc744 \uc9c1\uc811 \uc81c\uc5b4\ud574\uc11c serverless plugin\uc744 \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uace0 \ub78c\ub2e4\ub85c \ubc30\ud3ec\ud574\ubcf4\uc558\ub2e4. \ud328\ud0a4\uc9d5 \uacfc\uc815\uc744 \uc9c1\uc811 \uc81c\uc5b4\ud560\uc218 \uc788\uc73c\uba74 \ub9ce\uc740\uac78 \ud560 \uc218 \uc788\uc9c0\ub9cc \uc774\uac83"},{"title":"serverless \ubc30\ud3ec\ud558\uae30 (4) \ud50c\ub7ec\uadf8\uc778 \uc548\uc4f0\uace0 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 \ud568\uc218 \ubc30\ud3ec\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/deploying-serverless-4-pnpm-with-script\/","pubDate":"Sat, 20 Aug 2022 20:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/deploying-serverless-4-pnpm-with-script\/","description":"\uc774\uc804\uae00\uc5d0\uc11c\ub294 serverless-webpack \ub97c \uc0ac\uc6a9\ud588\uc744\ub54c \ubc1c\uc0dd\ud560 \uc218 \uc788\ub294 \ubb38\uc81c\ub97c \ub2e4\ub918\ub2e4. \uc774\ubc88\uc5d0\ub294 serverless-webpack\uac19\uc740 \ud50c\ub7ec\uadf8\uc778\uc744 \uc4f0\uc9c0 \uc54a\uace0 serverless framework\ub9cc"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 + Promise + async\/await + Error = ???","link":"https:\/\/if1live.github.io\/posts\/typescript-pitfall-of-promise-and-error\/","pubDate":"Sat, 15 Jan 2022 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/typescript-pitfall-of-promise-and-error\/","description":"\uac1c\uc694 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\ub294 \uc88b\uc740 \uc5b8\uc5b4\ub2e4. \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8 \uc9dc\ub4ef\uc774 \ucf54\ub4dc\ub97c \uc9dc\ub3c4 \ub418\ub2c8\uae4c \uc27d\uac8c \uc801\uc751\ud560 \uc218 \uc788\ub2e4. \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c \uc2e4\uc218\ud558\uae30 \uc26c\uc6b4 \ud0c0\uc785 \uad00\ub828 \ubb38\uc81c\ub97c \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 \ucef4\ud30c"},{"title":"serverless \ubc30\ud3ec\ud558\uae30 (3) serverless-webpack\uc758 \uacb0\ud568","link":"https:\/\/if1live.github.io\/posts\/deploying-serverless-3-flaw-of-serverless-webpack\/","pubDate":"Thu, 12 Aug 2021 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/deploying-serverless-3-flaw-of-serverless-webpack\/","description":"\uc774\uc804\uae00\uc5d0\uc11c\ub294 serverless-webpack \uae30\ubc18\uc73c\ub85c \ubc30\ud3ec \ud328\ud0a4\uc9c0 \ud06c\uae30\ub97c \uc904\uc5ec\ubd24\ub2e4. 3\ubd80\uc5d0\uc11c\ub294 serverless-webpack\uc758 \uacb0\ud568\uc744 \ub2e4\ub8ec\ub2e4. \uc791\uc131\uc77c \uae30\uc900\uc73c\ub85c \ucd5c\uc2e0 \ubc84\uc804\uc740 5.5.1 \uc774\ub2e4"},{"title":"serverless \ubc30\ud3ec\ud558\uae30 (2) serverless-webpack \uae30\ubc18\uc73c\ub85c \ubc30\ud3ec \ud328\ud0a4\uc9c0 \ud06c\uae30 \uc904\uc774\uae30","link":"https:\/\/if1live.github.io\/posts\/deploying-serverless-2-serverless-webpack-advance\/","pubDate":"Sun, 01 Aug 2021 23:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/deploying-serverless-2-serverless-webpack-advance\/","description":"\uc774\uc804\uae00\uc5d0\uc11c\ub294 serverless-webpack\ub97c \uc0ac\uc6a9\ud574\uc11c \ub78c\ub2e4 \ubc30\ud3ec\ud558\ub294\uac78 \ub2e4\ub918\ub2e4. \ubc30\ud3ec \ud328\ud0a4\uc9c0\uc758 \ud06c\uae30\ub294 21.18 MB (21,685KB) \uc600\ub2e4. 2\ubd80\uc5d0\uc11c\ub294 \ubc30\ud3ec \ud328\ud0a4\uc9c0 \ud06c\uae30\ub97c \uc904\uc774"},{"title":"serverless \ubc30\ud3ec\ud558\uae30 (1) serverless-webpack \ucd08\uae09","link":"https:\/\/if1live.github.io\/posts\/deploying-serverless-1-serverless-webpack-beginning\/","pubDate":"Sun, 01 Aug 2021 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/deploying-serverless-1-serverless-webpack-beginning\/","description":"why serverless-framework? \uc6f9 \ucf58\uc194\uc744 \ud1b5\ud574\uc11c AWS Lambda \ud568\uc218\ub97c \ub9cc\ub4e4\uace0 \ucf54\ub4dc\ub97c \uace0\uce60 \uc218 \uc788\ub2e4. SQS\ub85c \ub78c\ub2e4\ub97c \ud2b8\ub9ac\uac70\ud574\uc11c SES\ub97c \ud1b5\ud574 \uc774\uba54\uc77c \ubcf4\ub0b4\ub294 \uae30\ub2a5\uc740 \uc6f9\ucf58\uc194\ub85c\ub3c4 \ucda9\ubd84\ud788 \uc791\uc131\ud560 \uc218 \uc788\uc744 \uac83\uc774\ub2e4"},{"title":"2021\ub144\uc5d0 \ud558\ub294 2020\ub144 \ud68c\uace0","link":"https:\/\/if1live.github.io\/posts\/review-year-2020\/","pubDate":"Sat, 02 Jan 2021 02:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/review-year-2020\/","description":"\uac1c\uc694 2020\ub144 \ud68c\uace0\ub97c 2020\ub144\uc5d0 \uc4f0\uace0 \uc2f6\uc5c8\uc9c0\ub9cc \uac15\uc694\ub418\uc9c0 \uc54a\ub294 \ub9c8\uac10\uc740 \uc9c0\ud0a4\uae30 \uc5b4\ub835\ub2e4. \uc544\ubb34\uac83\ub3c4 \uc548\uc4f0\uace0 \ub118\uc5b4\uac00\uba74 \uc7ac\ubbf8\uc5c6\uc73c\ub2c8 \ud68c\uace0\ub97c \ube4c\ubbf8\ub85c \ubed8\uae00\uc774\ub098 \uc368\ubcf4\uc790. Smash Legends"},{"title":"2020\ub144\uc2dd\uc73c\ub85c \ube14\ub85c\uadf8 \ube4c\ub4dc \uace0\uce58\uae30","link":"https:\/\/if1live.github.io\/posts\/migration-blog-2020\/","pubDate":"Sat, 14 Nov 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/migration-blog-2020\/","description":"dep -&gt; Go Modules golang\uc758 \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc790\ub294 golang\uc774 \ub9cc\ub4e4\uc5b4\uc9c4 \uc774\ud6c4 \uba87 \ub144\ub3d9\uc548 \uac1c\ud310\uc774\uc5c8\ub2e4. \uc5bc\ub9c8\ub098 \uac1c\ud310\uc774\uc5c8\ub294\uc9c0\ub294 golang PackageManagementT"},{"title":"DBML: Database Markup Language","link":"https:\/\/if1live.github.io\/posts\/dbml-entity-relation-diagram-as-code\/","pubDate":"Mon, 09 Nov 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/dbml-entity-relation-diagram-as-code\/","description":"\uac1c\uc694 IaC (Infrastructure as Code) \ubf55\uc744 \ub9de\uc740 \uc774\ud6c4\ub85c\ub294 \ub420 \uc218 \uc788\ub294\ud55c \ub9ce\uc740 \uac83\uc744 \ucf54\ub4dc\ub85c \ud45c\ud604\ud558\ub824\uace0 \ub178\ub825\ud588\ub2e4. ERD (Entity-relation diagram)\ub3c4 \ucf54\ub4dc\ub85c \ud45c\ud604\ud558\uace0 \uc2f6\uc5c8\ub358 \ubb3c\uac74\uc774\ub2e4. \ub9c8\uc6b0\uc2a4\ub85c ERD \uadf8\ub9ac\ub294"},{"title":"mermaid: diagram as code","link":"https:\/\/if1live.github.io\/posts\/mermaid-diagram-as-code\/","pubDate":"Thu, 05 Nov 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/mermaid-diagram-as-code\/","description":"\uac1c\uc694 UML \uc0ac\uc6a9\ud558\uba74 \uae00\ub85c\ub9cc \uc774\uc57c\uae30\ud558\ub294 \uac83\ubcf4\ub2e4 \ud3b8\ub9ac\ud558\ub2e4. \ud558\uc9c0\ub9cc UML\uc744 \ub9c8\uc6b0\uc2a4\ub85c \uadf8\ub9ac\ub294\uac74 \ub9e4\uc6b0 \ud53c\uace4\ud558\uace0 \uc720\uc9c0\ubcf4\uc218 \ud558\uae30 \uc5b4\ub835\ub2e4. \ub9c8\uc6b0\uc2a4\ub85c \uadf8\ub9bc \uadf8\ub9ac\ub294 \ub3c4\uad6c\ub294 \ub098\uc911\uc5d0 \ubcc0"},{"title":"callbackWaitsForEmptyEventLoop\uc640 AWS Lambda\uc758 \ud568\uc815","link":"https:\/\/if1live.github.io\/posts\/trap-callback-waits-for-empty-event-loop\/","pubDate":"Fri, 30 Oct 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/trap-callback-waits-for-empty-event-loop\/","description":"\uac1c\uc694 \uc694\uc0c8 typescript + express \ubc31\uc5d4\ub4dc\ub97c \uc9e0\ub2e4. \uc6b4\uc601\uc5d0 \ub300\ud574\uc11c\ub294 \uc870\uae08\ub3c4 \uc0dd\uac01\ud558\uae30 \uc2eb\uc5b4\uc11c AWS Lambda\ub85c \ubc30\ud3ec\ud55c\ub2e4. serverless-http\ub77c\ub294 \uc88b\uc740 \ubb3c\uac74\uc744 \uc4f0\uba74 ex"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\ub85c API \uba85\uc138 \uc791\uc131\ud558\uace0 \uc11c\ubc84\/\ud074\ub77c stub \uc0dd\uc131\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/stub-from-typescript-api-specification\/","pubDate":"Thu, 29 Oct 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/stub-from-typescript-api-specification\/","description":"\uac1c\uc694 \uc5bc\ub9c8\uc804\uc5d0 \ubc31\uc5d4\ub4dc\/\ud504\ub860\ud2b8\uc5d4\ub4dc\ub85c \uad6c\uc131\ub41c \uc6b4\uc601\ud234\uc744 \uc9f0\ub2e4. \ubc31\uc5d4\ub4dc\ub294 typescript + express\ub85c \uad74\ub7ec\uac04\ub2e4. \ud504\ub860\ud2b8\uc5d4\ub4dc\ub294 typescript + react\ub85c \uad74\ub7ec\uac04\ub2e4. \uc591\ucabd\uc744 \uac19\uc740 \uc5b8"},{"title":"express\uc5d0\uc11c \ucf58\uc194\ub85c \ucc0d\uc740 \ub85c\uadf8\ub97c HTTP \uc751\ub2f5\uc5d0 \ubd99\uc774\uae30","link":"https:\/\/if1live.github.io\/posts\/express-attach-console-log-to-response\/","pubDate":"Sat, 11 Jul 2020 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/express-attach-console-log-to-response\/","description":"HTTP \uc751\ub2f5\uc5d0 \ucf58\uc194 \ub85c\uadf8 \ubd99\uc778 \uc774\uc720 \uac04\ub2e8\ud55c express \uc11c\ubc84\uac00 \uc788\ub2e4\uace0 \uce58\uc790. const express = require(&#39;express&#39;); const delay = require(&#39;delay&#39;); const app = express(); app.get(&#39;\/&#39;, async (req, res) =&gt; { const data = await execute(req.query || {}); res.json(data); }); async function execute(input) { const id = input.id; console.info(`before delay: ${id}`); await delay(100); console.warn(`after delay: ${id}`); return {"},{"title":"typeorm\uc5d0\uc11c repository.save() \ud638\ucd9c\ud560\ub54c UPDATE \ucffc\ub9ac\ub9cc \uc0ac\uc6a9\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/typeorm-entity-proxy-for-save\/","pubDate":"Fri, 10 Jul 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/typeorm-entity-proxy-for-save\/","description":"repository.save() \uc758 \ud568\uc815 typeorm\uc73c\ub85c \uc544\ub798\uc640 \uac19\uc740 \uc5d4\ud2f0\ud2f0\ub97c \uc815\uc758\ud588\ub2e4\uace0 \uce58\uc790. @Entity() export class UserEntity { @PrimaryColumn() key1: string; @PrimaryColumn() key2: string; @Column() data: string; } \uc5d4\ud2f0\ud2f0\ub97c \uc0b4\uc9dd \uace0\uccd0\uc11c \uc800\uc7a5\ud558\uc790.repository."},{"title":"ioredis\uc5d0 \ub85c\uae45 \ub07c\uc6cc\ub123\uae30","link":"https:\/\/if1live.github.io\/posts\/ioredis-logging-with-monkey-patch\/","pubDate":"Thu, 09 Jul 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ioredis-logging-with-monkey-patch\/","description":"\ub85c\uae45\uc758 \ud544\uc694\uc131 \uc694\uc0c8 \uc791\uc5c5\ud558\uace0 \uc788\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c typeorm\uacfc ioredis\ub97c \uc4f0\uace0 \uc788\ub2e4. \uae30\ub2a5\uc774 \uac80\uc99d\ub41c \ucf54\ub4dc\ub97c \uc9dc\uae30 \uc704\ud574\uc11c \uc720\ub2db \ud14c\uc2a4\ud2b8\ub97c \ub3c4\ubc30\ud558\uace0 \uc788\ub2e4. \ud558\uc9c0"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc640 \ud638\uc774\uc2a4\ud305","link":"https:\/\/if1live.github.io\/posts\/typescript-and-hoisting\/","pubDate":"Thu, 02 Jan 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/typescript-and-hoisting\/","description":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\ub294 union type\uc774 \uc788\ub2e4. \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\ub294 \ub9e4\uc6b0 \uc88b\uc740 \uc5b8\uc5b4\ub77c\uc11c \ubd84\uae30\ub97c \uc801\uc808\ud788 \ucc98\ub9ac\ud574\uc8fc\uba74 union type\uc758 \ud2b9\uc815 \ud0c0\uc785\uc73c\ub85c \ud55c\uc815\ud560 \uc218 \uc788\ub2e4. \uc544\ub798\uc758 \ucf54\ub4dc\ub294 string |"},{"title":"\ub098\uc758 \ubc31\uc5d4\ub4dc \ubc30\ud3ec \ud658\uacbd \uc815\ucc45","link":"https:\/\/if1live.github.io\/posts\/my-backend-deployment-environment-policy\/","pubDate":"Thu, 02 Jan 2020 00:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/my-backend-deployment-environment-policy\/","description":"\ubc30\ud3ec \ud658\uacbd(Development environment)\uc740 \ubaa9\uc801\uc5d0 \ub530\ub77c\uc11c \uac01\uac01 \ub2e4\ub978 \uc2a4\ud14c\uc774\uc9c0\ub85c \uc18c\ud504\ud2b8\uc6e8\uc5b4 \ubc30\ud3ec\ud558\ub294\uac78 \ub9d0\ud55c\ub2e4. \uc608\uc2dc\ub85c \uc124\uba85\ud558\uba74 \uc26c\uc6b4\ub370 \ub9d0\ub85c"},{"title":"serverless framework plugins","link":"https:\/\/if1live.github.io\/posts\/serverless-framework-plugins\/","pubDate":"Wed, 01 Jan 2020 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/serverless-framework-plugins\/","description":"\uac1c\uc694 serverless framework\uc740 aws lambda \uac19\uc740 \uc11c\ubc84\ub9ac\uc2a4 \ud50c\ub7ab\ud3fc\uc5d0 \ubc30\ud3ec\ud560\ub54c \uc720\uc6a9\ud55c \ub3c4\uad6c\uc774\ub2e4. \ud558\uc9c0\ub9cc serverless framework\ub97c \uadf8\ub300\ub85c \uc4f0\ub294\uac74 \ubd88\ud3b8\ud558\ub2e4. \ub2e4\ud589\ud788\ub3c4 serv"},{"title":"2019\ub144 \ub9c8\ubb34\ub9ac","link":"https:\/\/if1live.github.io\/posts\/review-year-2019\/","pubDate":"Sun, 29 Dec 2019 02:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/review-year-2019\/","description":"\ub0b4 \uacbd\ub825\uc740 \uacc4\uc0b0\ud558\uae30 \ub9e4\uc6b0 \uc27d\ub2e4. 2010\ub144 1\uc6d4 2\uc77c\uc5d0 \ucc98\uc74c \ucd9c\uadfc\ud588\ub2e4. \uadf8\ub9ac\uace0 \ub2e4\uc74c \uc8fc\uc5d0\ub294 2020\ub144 1\uc6d4 2\uc77c\uc774 \uc788\ub2e4. \ubc8c\uc368 \uacbd\ub825 10\ub144\ucc28\ub77c\ub2c8&hellip; \uadf8"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc640 \uc21c\ud658 \uc758\uc874\uc131","link":"https:\/\/if1live.github.io\/posts\/typescript-and-circular-dependency\/","pubDate":"Sat, 28 Dec 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/typescript-and-circular-dependency\/","description":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc640 \uc21c\ud658 \uc758\uc874\uc131 circular dependency(\uc21c\ud658 \uc758\uc874\uc131, circular reference, \uc21c\ud658 \ucc38\uc870)\ub294 \ub300\ubd80\ubd84\uc758 \uc5b8\uc5b4\uc5d0\uc11c \ubc1c\uc0dd\uc2dc\ud0ac \uc218 \uc788\ub294 \ubb38\uc81c\uc774\ub2e4. C \uc5d0\uc11c\ub3c4 circular dependency \ubb38\uc81c\uac00 \uc788\ub2e4."},{"title":"NetFUNNEL \uc6b0\ud68c\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/bypass-netfunnel\/","pubDate":"Sat, 21 Sep 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/bypass-netfunnel\/","description":"\uac1c\uc694 \uc11c\ubbfc\ud615 \uc548\uc2ec\uc804\ud658\ub300\ucd9c \uc2e0\uccad\ud558\uac8c \ub418\uc5c8\ub2e4. \uc2e0\uccad\ud558\ub7ec \ub4e4\uc5b4\uac14\ub354\ub2c8 \ub300\uae30 \ud398\uc774\uc9c0\uac00 \ub728\ub354\ub77c. \uae30\ub2e4\ub9ac\ub294 \uac83\ubcf4\ub2e4 \ub72f\uc5b4\uc11c \uc6b0\ud68c\ud558\ub294\uac8c \ube60\ub97c\uac70\uac19\ub354\ub77c. \ub098\ub294 \uc778\ub0b4\uc2ec\uc774 \uc5c6\ub294 \uc778\uac04"},{"title":"express\uc5d0\uc11c \uc5d0\ub7ec\ub85c HTTP status code \ud1b5\uc81c\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/express-error-and-http-status-code\/","pubDate":"Mon, 12 Aug 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/express-error-and-http-status-code\/","description":"throw new Error(&lsquo;BadRequest&rsquo;) \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c Error\ub97c \ub358\uc838\uc11c \uc5d0\ub7ec \ucc98\ub9ac\ud558\ub294 \uac83\uc740 \uc27d\uace0 \uac04\ub2e8\ud55c \ubc29\ubc95\uc774\ub2e4. express\uc5d0\uc11c\ub3c4 \ub9c8\ucc2c\uac00\uc9c0\uc774\ub2e4. Error\ub97c \ub358\uc9c0\uba74 200 OK\uac00 \uc544\ub2cc"},{"title":"GraphQL\uc5d0\uc11c\ub294 \uc5b4\ub5a4 HTTP status code\ub97c \uc0ac\uc6a9\ud560\uae4c?","link":"https:\/\/if1live.github.io\/posts\/graphql-http-status-code\/","pubDate":"Sun, 28 Jul 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/graphql-http-status-code\/","description":"\uc544\ubb34\ub3c4 \uad00\uc2ec\uac16\uc9c0 \uc54a\ub294 GraphQL \uc774\uc57c\uae30 \ub098\ub294 2015\ub144\uc5d0 GraphQL\uc774 \ubb34\uac83\uc778\uc9c0\uc5d0 \ucc98\uc74c \ub4e4\uc5c8\ub2e4. 2016\ub144\uc5d0 \uae30\uc5b4VR \uc571\uc2a4\ud1a0\uc5b4\ub97c \ub72f\uc73c\uba74\uc11c \ud398\uc774\uc2a4\ubd81\uc774 \uad6c\ud604\ud55c GrapQL AP"},{"title":"Jest \ud0c8\ucd9c\uae30 - \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8 + Mocha","link":"https:\/\/if1live.github.io\/posts\/escape-from-jest-mocha-with-typescript\/","pubDate":"Wed, 03 Jul 2019 01:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-jest-mocha-with-typescript\/","description":"\uac1c\uc694 Jest \ud0c8\ucd9c\uae30 - Jest\ub294 \ub290\ub9ac\ub2e4, Jest \ud0c8\ucd9c\uae30 - Mocha\ub97c \uc4f0\uc790\uc5d0\uc11c\ub294 \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8 \uae30\uc900\uc73c\ub85c \uc608\uc81c\ub97c \uc791\uc131\ud588\ub2e4. \ud558\uc9c0\ub9cc \uc2e4\uc81c\ub85c \ub0b4\uac00 \uc4f0\ub294 \uc5b8\uc5b4\ub294 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc774"},{"title":"Jest \ud0c8\ucd9c\uae30 - Mocha\ub97c \uc4f0\uc790","link":"https:\/\/if1live.github.io\/posts\/escape-from-jest-use-mocha\/","pubDate":"Tue, 02 Jul 2019 01:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-jest-use-mocha\/","description":"\uac1c\uc694 \uc774\uc804\uc5d0 Jest \ud0c8\ucd9c\uae30 - Jest\ub294 \ub290\ub9ac\ub2e4\ub97c \uc37c\ub2e4. \uc774\ub97c \ud1b5\ud574 jest\ub97c \ud0c8\ucd9c\ud574\uc11c mocha\ub85c \ub118\uc5b4\uac00\uae30\ub85c \ub9c8\uc74c\uba39\uc5c8\ub2e4. jest\ub294 \ub290\ub9b0\uac70 \ube7c\uace4 \ubb38\uc81c\uac00 \uc5c6\ub2e4. CI"},{"title":"Jest \ud0c8\ucd9c\uae30 - Jest\ub294 \ub290\ub9ac\ub2e4","link":"https:\/\/if1live.github.io\/posts\/escape-from-jest-jest-is-slow\/","pubDate":"Mon, 01 Jul 2019 01:00:00 +0900","guid":"https:\/\/if1live.github.io\/posts\/escape-from-jest-jest-is-slow\/","description":"\uac1c\uc694 \uc694\uc0c8 \uc791\uc5c5\ud558\ub294 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c jest\ub97c \uc0ac\uc6a9\ud574\uc11c \uc720\ub2db\ud14c\uc2a4\ud2b8\ub97c \ub3cc\ub9b0\ub2e4. \ud504\ub85c\uc81d\ud2b8\uac00 \uc9c4\ud589\ub420\uc218\ub85d \ud14c\uc2a4\ud2b8\uac00 \uc810\uc810 \ub290\ub824\uc9c0\ub354\ub2c8 \uc774\uc81c \uc720\ub2db \ud14c\uc2a4\ud2b8 \ud55c\ubc88 \ub3cc\ub9ac\ub294\ub370 1\ubd84\uc774"},{"title":"\ud0c0\uc785 \uc548\uc804\ud55c express \uc571 \uad6c\ud604\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/make-typesafe-express-app\/","pubDate":"Sun, 30 Jun 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/make-typesafe-express-app\/","description":"\uac1c\uc694 import express from &#39;express&#39;; const app = express(); app.get(&#39;\/sum&#39;, (req, res) =&gt; { const a = parseInt(req.query.a, 10); const b = parseInt(req.query.b, 10); if (isNaN(a)) { throw new Error(&#39;not a number&#39;); } if (isNaN(b)) { throw new Error(&#39;not a number&#39;); } const result = a &#43; b; res.json({ result }); }); const port = 5000; app.listen(port, () =&gt; console.log(`running 127.0.0.1:${port}`)); \uc704\uc758 \ucf54\ub4dc\ub294 express, \ud0c0\uc785"},{"title":"\uc6d4\uc694\uc77c\uc758 \ubc84\uadf8 - webpack-cli","link":"https:\/\/if1live.github.io\/posts\/bug-of-monday-webpack-cli\/","pubDate":"Sat, 29 Jun 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/bug-of-monday-webpack-cli\/","description":"\ubb38\uc81c!!! \uc774\ubc88\uc8fc \uc6d4\uc694\uc77c(2019\/06\/24)\uc5d0 webpack \ube4c\ub4dc\ub97c \ub3cc\ub838\ub294\ub370 webpack-cli \uc548\uc5d0\uc11c \ud130\uc84c\ub2e4. if (!e && fileOwnerId === process.getuid()) utimesSync(openCollectivePath, now, now); TypeError: process.getuid is not a function at e (\\node_modules\\webpack-cli\\bin\\cli.js:356:43) at FSReqWrap.oncomplete (fs.js:141:20) \uae08\uc694\uc77c(2019\/"},{"title":"10\ub144\uc774\uba74 \uac15\uc0b0\ub3c4 \ubcc0\ud55c\ub2e4. \uadf8\ub9ac\uace0 \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub3c4","link":"https:\/\/if1live.github.io\/posts\/in-ten-years-strong-mountains-will-change-and-javascript\/","pubDate":"Tue, 12 Feb 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/in-ten-years-strong-mountains-will-change-and-javascript\/","description":"\uc5bc\ub9c8\uc804\uc5d0 \uad6c\ubc84\uc804 IE\uc5d0\uc11c\ub9cc \ub3cc\uc544\uac00\ub294 \ucf54\ub4dc\ub97c \ubc1f\uc544\uc11c \uae00\uc744 \uc37c\ub2e4. \uae00\uc744 \uc4f0\ub2e4\uac00\uac00 \uc61b\ub0a0\uc5d0 \ubc1f\uc740 IE \uad6c\ubc84\uc804\uacfc \uad00\ub828\ub41c \uc7ac\ubc0c\ub294 \ucf54\ub4dc\uac00 \uc0dd\uac01\ub0ac\ub2e4. \uadf8\ub798\uc11c \uc61b\ub0a0 \uc774\uc57c\uae30\ub97c \ud558\ub098 \ub354 \uc368"},{"title":"\uad00\ub300\ud55c \ucf54\ub4dc\ub294 \uc27d\uac8c \ub9dd\uac00\uc9c4\ub2e4","link":"https:\/\/if1live.github.io\/posts\/generous-code-breaks-easily\/","pubDate":"Mon, 11 Feb 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/generous-code-breaks-easily\/","description":"\uac1c\uc694 KOCW\ub97c \ud1b5\ud574\uc11c \uc9d1\ud569\ub860\uc744 \uacf5\ubd80\ud558\uae30 \uc2dc\uc791\ud588\ub2e4. \ub3d9\uc601\uc0c1 \uac15\uc758 \ubcf4\uae30\ub97c \ub20c\ub800\ub354\ub2c8 \ud06c\ub86c\uc5d0\uc11c\ub294 \uc548\ub3cc\uc544\uac00\ub354\ub77c. \uc561\ud2f0\ube0c\uc5d1\uc2a4 \uae30\ubc18 \uac15\uc758\ub77c\uace0 \ubd99\uc5b4\uc788\ub354\ub2c8 \uc5ed\uc2dc\ub098 \ud06c\ub86c\uc5d0\uc11c"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c \uc808\ub300\uacbd\ub85c \uc4f0\uae30","link":"https:\/\/if1live.github.io\/posts\/use-absolute-path-in-typescript\/","pubDate":"Sun, 10 Feb 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/use-absolute-path-in-typescript\/","description":"\uac1c\uc694 \uc694\uc0c8 \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc4f0\uace0\uc788\ub2e4. 100\uc904\uc9dc\ub9ac \ud504\ub85c\uadf8\ub7a8 \uc9dc\ub294\uac8c \uc544\ub2c8\ub2c8 \uc18c\uc2a4\ud30c\uc77c\uc774 \uc218\uc2ed\uac1c\ub85c \ub098\ub258\uc5b4\uc838\uc788\ub2e4. \ud30c\uc77c\uc5d0 \uc811\uadfc\ud558\uae30 \uc704\ud574\uc11c\ub294 \ub514\ub809\ud1a0\ub9ac \uad6c\uc870\ub3c4 \uba87\ub2e8\uacc4\ub85c"},{"title":"HTTP \uc694\uccad\uc5d0 body\ub97c \ubd99\uc5ec\uc11c \ubcf4\ub0b4\uba74 \uc5b4\ub5a4 \uc77c\uc774 \ubc8c\uc5b4\uc9c8\uae4c? part 2","link":"https:\/\/if1live.github.io\/posts\/http-request-with-body-and-java-httpurlconnection\/","pubDate":"Sat, 09 Feb 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/http-request-with-body-and-java-httpurlconnection\/","description":"\uc0bd\uc9c8\uc758 \uc2dc\uc791 \uc774\uc804\uc5d0 HTTP GET \uc694\uccad\uc5d0 body\ub97c \ubd99\uc5ec\uc11c \ubcf4\ub0b4\uba74 \uc5b4\ub5a4 \uc77c\uc774 \ubc8c\uc5b4\uc9c8\uae4c?\ub97c \uc37c\ub2e4. \ub098\uc911\uc5d0 \uc790\ubc14\uc758 HttpURLConnection\uc758 \ub3d9\uc791\uc774 \uc548\ub4dc\ub85c\uc774\ub4dc \ubc84"},{"title":"\uc0ac\ub78c \uc0dd\uac01\ud558\ub294\uac74 \ube44\uc2b7\ud558\ub2e4","link":"https:\/\/if1live.github.io\/posts\/peoples-thoughts-are-similar\/","pubDate":"Wed, 30 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/peoples-thoughts-are-similar\/","description":"\ucd5c\uadfc\uc5d0 \ud074\ub77c\uc774\uc5b8\ud2b8-\uc11c\ubc84 \uc6f9 \uc571 \ub9cc\ub4e4\uae30 - \uc790\ubc14\uc640 \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub85c \ubc30\uc6b0\ub294 \ubaa8\ub358 \uc6f9 \uc571 \uac1c\ubc1c\uc774\ub77c\ub294 \ucc45\uc744 \uc77d\uc5c8\ub2e4. \ub3c4\uc11c\uad00 \ub3cc\uc544\ub2e4\ub2c8\ub2e4\ubcf4\ub2c8 \uc190\uc5d0 \uc7a1\ud600\uc11c \uc77d\uc5b4\ubd24\ub2e4. 8\uc7a5 API \ub514\uc790"},{"title":"yup\ub85c \uc785\ub825 \uac80\uc99d\uc744 \ub35c \uadc0\ucc2e\uac8c \ucc98\ub9ac\ud558\uc790","link":"https:\/\/if1live.github.io\/posts\/yup-declarative-input-validation\/","pubDate":"Sat, 19 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/yup-declarative-input-validation\/","description":"\uac1c\uc694 \ud504\ub85c\uadf8\ub798\uba38\uac00 \ub7ec\uc2a4\ud2b8, C#, \ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uac19\uc740 \ud0c0\uc785 \uc788\ub294 \uc5b8\uc5b4\ub85c \ucf54\ub4dc\ub97c \uc9dc\uba74 \ucef4\ud30c\uc77c\ub7ec\uc5d0 \uc758\ud574\uc11c \ud0c0\uc785\uc774 \ubcf4\uc7a5\ub418\ub2c8 \ub7f0\ud0c0\uc784\uc5d0\uc11c \ubb38\uc81c\uac00 \uc0dd\uae30\uc9c0 \uc54a\ub294\ub2e4. \ubbf8\uac1c\ud55c \uc2a4\ud06c\ub9bd\ud2b8"},{"title":"HTTP GET \uc694\uccad\uc5d0 body\ub97c \ubd99\uc5ec\uc11c \ubcf4\ub0b4\uba74 \uc5b4\ub5a4 \uc77c\uc774 \ubc8c\uc5b4\uc9c8\uae4c?","link":"https:\/\/if1live.github.io\/posts\/http-get-request-with-body-and-http-library\/","pubDate":"Tue, 15 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/http-get-request-with-body-and-http-library\/","description":"\uc0bd\uc9c8\uc758 \uc2dc\uc791 \uc694\uc0c8 \uc720\ub2c8\ud2f0\ub85c \uac8c\uc784\uc744 \ub9cc\ub4e4\uace0 \uc788\ub2e4. \ub098\ub294 \uc11c\ubc84\ucabd\uc744 \uc791\uc5c5\ud558\uace0 \uc788\ub2e4. \uc11c\ubc84\ub294 HTTP \uae30\ubc18\uc73c\ub85c \uad6c\ud604\ud558\uace0 \uc788\ub2e4. \uc2e4\uc2dc\uac04 \ud1b5\uc2e0\uc774 \ud544\uc694\uc5c6\uc73c\uba74 HTTP \uc4f0\ub294\uac8c \ud3b8\ud558\uc796\uc544? RESTful API"},{"title":"django\ub97c \uad00\ub9ac\ud234\ub85c \uc4f0\uc790","link":"https:\/\/if1live.github.io\/posts\/use-django-as-admin-tool\/","pubDate":"Sun, 13 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/use-django-as-admin-tool\/","description":"\uac1c\uc694 \uc11c\ube44\uc2a4\ub97c \uac1c\ubc1c\ud558\ub2e4\ubcf4\uba74 \uc5b4\ub5a4 \uc2dd\uc73c\ub85c\ub4e0 \uc5b4\ub4dc\ubbfc \ud234\uc774 \ud544\uc694\ud574\uc9c4\ub2e4. \uac04\ub2e8\ud55c \uac8c\uc2dc\ud310\uc744 \ub9cc\ub4e0\ub2e4\uace0 \uc0dd\uac01\ud558\uc790. \uad00\ub9ac\uc790\uc758 \uc5c5\ubb34\uc911\uc5d0\ub294 \uac8c\uc2dc\ud310\uc758 \uc2a4\ud338\uae00\uc744 \uc9c0\uc6b0\ub294\uac8c \uc788\uc744 \uac83\uc774"},{"title":"\ub098\ub294 \uae00\uc744 \uc4f0\ub294\uac8c \uc5b4\ub835\ub2e4","link":"https:\/\/if1live.github.io\/posts\/writing-article-is-hard\/","pubDate":"Sat, 12 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/writing-article-is-hard\/","description":"2018\ub144 12\uc6d4 \ub9d0\uc758 \ud48d\uacbd\uc774 \uc0dd\uac01\ub09c\ub2e4. \ud2b8\uc704\ud130\uc5d0\uc11c \ub9ce\uc740 \uc0ac\ub78c\ub4e4\uc774 &ldquo;2018\ub144 \ud68c\uace0&quot;\ub77c\ub294 \uae00\uc744 \uc4f0\ub354\ub77c. \ud2b8\uc704\ud130\ub9cc\uc774 \uc544\ub2c8\ub2e4. 2018"},{"title":"\ub85c\uadf8 \ud30c\uc77c\uc740 \uc88b\ub2e4","link":"https:\/\/if1live.github.io\/posts\/log-file-is-good\/","pubDate":"Sun, 06 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/log-file-is-good\/","description":"\uac1c\uc694 \uc608\uc804\uc5d0 \uc7ac\ubc0c\ub294 \ubc84\uadf8\ub97c \ubc1f\uc740\uc801 \uc788\ub2e4. \ucf54\ub4dc\ub294 \uc544\ub798\uc640 \uac19\uc774 \uad74\ub7ec\uac14\ub2e4. \uc694\uccad\uc774 \ub4e4\uc5b4\uc624\uba74 transaction \uc2dc\uc791. \uc694\uccad\uc774 \ub4e4\uc5b4\uc624\uba74 \ud2b8\ub79c\uc7ad\uc158\uc774 \uc2dc\uc791\ub418\ub3c4\ub85d \ud504\ub808\uc784\uc6cd\uc774 \uad6c\ud604\ub418\uc5b4 \uc788\uc5c8\ub2e4"},{"title":"\ub85c\uadf8\ub294 \ubb34\uc8c4","link":"https:\/\/if1live.github.io\/posts\/log-file-is-not-guilty\/","pubDate":"Sun, 06 Jan 2019 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/log-file-is-not-guilty\/","description":"\uc218\uc815 \ub0b4\uc5ed 2019\/01\/06: \uc791\uc131 2019\/01\/07: \uac8c\uc2dc \uc911\ub2e8"},{"title":"\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c expect(-3 % 3).toEqual(3 % 3)\uac00 \uc2e4\ud328\ud558\ub294 \uc774\uc720","link":"https:\/\/if1live.github.io\/posts\/-3-mod-3-is-not-equal-to-3-mod-3-in-javascript\/","pubDate":"Sun, 09 Dec 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/-3-mod-3-is-not-equal-to-3-mod-3-in-javascript\/","description":"-3%3 \uacfc 3%3\uc740 \uac19\uc740\uac00? \uc5bc\ub9c8\uc804\uc5d0 \ucf54\ub529\ud558\ub2e4 \ubc1f\uc740 \ubc84\uadf8\uc5d0 \ub300\ud574\uc11c \uc774\uc57c\uae30\ub97c \ud574\ubcf8\ub2e4. \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub85c \ubbf8\ub514\uc5b4 \ud50c\ub808\uc774\uc5b4\uc758 \ud50c\ub808\uc774\ub9ac\uc2a4\ud2b8\ub97c \uad6c\ud604\ud558\uace0 \uc788\uc5c8\ub2e4. \ud50c\ub808\uc774\ub9ac\uc2a4\ud2b8"},{"title":"OMR\uce74\ub4dc\uc640 2\uc9c4\ubc95","link":"https:\/\/if1live.github.io\/posts\/omr-and-binary-number-system\/","pubDate":"Fri, 07 Dec 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/omr-and-binary-number-system\/","description":"\ub2e4\ub4e4 \uc911, \uace0\ub4f1\ud559\uad50\ub54c OMR \uce74\ub4dc\ub97c \ubd24\uc744 \uac83\uc774\ub2e4. \uc911, \uace0\ub4f1\ud559\uad50\ub54c \uc911\ubcf5\ub2f5\uc548\uc774 \uc874\uc7ac\ud558\ub294 \ubb38\uc81c\ub3c4 \ud480\uc5b4\ubd24\uc744 \uac83\uc774\ub2e4. \uadf8\ub9ac\uace0 \ucc44\uc810 \uacb0\uacfc\ub97c \ubc1b\uc544\ubd24\uc744 \uac83\uc774\ub2e4. \uadf8\uac83\uc744 \ubcf4\uba74 \uc790\uc2e0\uc774"},{"title":"\ud0c0\uc785\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c if\ubb38 \uc548\uc5d0 promise\uac00 \ub4e4\uc5b4\uac00\ub294 \ubb38\uc81c \ud53c\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/prevent-bug-by-if-statement-with-promise\/","pubDate":"Sat, 13 Oct 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/prevent-bug-by-if-statement-with-promise\/","description":"async function + if \uc61b\ub0a0 \uc61b\uc801 \ubbf8\uac1c\ud55c \uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\uc5d0\ub294 \ucf5c\ubc31\ubfd0\uc774\uc5c8\ub2e4. \ub098\uc911\uc5d0 promise\uac00 \ucd94\uac00\ub418\uc11c \uc88b\uc544\uc84c\ub2e4. \ub354 \ub098\uc911\uc5d0 async\/await\uac00 \ucd94\uac00\ub418\uc11c \ub354 \uc88b\uc544\uc84c"},{"title":"\uc2e4\uc81c \uc0ac\ub840\ub85c \ubcf4\ub294 warning.or.kr part 2","link":"https:\/\/if1live.github.io\/posts\/warning-or-kr-in-real-case-2\/","pubDate":"Tue, 09 Oct 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/warning-or-kr-in-real-case-2\/","description":"\uac1c\uc694 2018\ub144 10\uc6d4 9\uc77c, mobile.twitter.com \uc774 warning.or.kr \ub2f9\ud588\ub2e4. \uadf8\ub9ac\uace0 \uba87\uc2dc\uac04 \ub4a4\uc5d0 \ucc28\ub2e8\uc774 \ud574\uc81c\ub418\uc5c8\ub2e4. \ubb3c \ub4e4\uc5b4\uc62c\ub54c \ub178 \uc800\uc73c\ub77c\ub294 \ub9d0\uc774 \uc788\ub2e4. \ud604\uc2e4 \uc138\uacc4\uc5d0 \ucc28\ub2e8 \uc774\ubca4\ud2b8\uac00 \ubc1c\uc0dd\ud588\uc73c\ub2c8 \uadc0\ucc2e"},{"title":"\ucd5c\uc0c1\uc704 \ube44\ud2b8\uc758 \uc704\uce58 \ucc3e\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/find-the-highest-order-bit\/","pubDate":"Sun, 26 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/find-the-highest-order-bit\/","description":"\uac1c\uc694 \uc774\uc804\uc5d0 \ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790 \uc5c6\uc774 x % 256 \uacc4\uc0b0\ud558\uae30\uacfc \ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790 \uc5c6\uc774 x % (2\uc758 \uac70\ub4ed\uc81c\uacf1) \uacc4\uc0b0\ud558\uae30\ub77c\ub294 \uae00\uc744 \uc37b\ub2e4. \uc0c9\ub2e4\ub978 \uae30\ubc95\uc744 \ub2e4\ub8e8\ub294 \uae00\uc778\ucc99 \ud558\uc9c0\ub9cc \ucef4\ud30c\uc77c\ub7ec\uac00"},{"title":"\ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790 \uc5c6\uc774 x % (2\uc758 \uac70\ub4ed\uc81c\uacf1) \uacc4\uc0b0\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/use-bit-op-as-mod-operator\/","pubDate":"Mon, 20 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/use-bit-op-as-mod-operator\/","description":"\uc774\uc804\uc5d0 \ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790 \uc5c6\uc774 x % 256 \uacc4\uc0b0\ud558\uae30\ub77c\ub294 \uae00\uc744 \uc37b\ub2e4. % 256\ub9cc \uacc4\uc0b0\ud560 \uc218 \uc788\uc73c\uba74 \uc7ac\ubbf8\uc5c6\uc73c\ub2c8\uae4c \ub354 \ud655\uc7a5\ud574\ubcf4\uc790. % 256\uc744 \uad6c\ud558\uae30 \uc704\ud574\uc11c \uce90\uc2a4\ud305\uc744 \uc774\uc6a9\ud588\ub2e4."},{"title":"\ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790 \uc5c6\uc774 x % 256 \uacc4\uc0b0\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/use-casting-as-mod-operator\/","pubDate":"Sat, 18 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/use-casting-as-mod-operator\/","description":"1\ub144\uc804, 2017\ub144 8\uc6d4 16\uc77c\uc5d0 \uc7ac\ubc0c\ub294 \uc0dd\uac01\uc774 \ub098\uc11c \ud2b8\uc717\uc744 \uc4f4\uac8c \uc788\ub2e4. a%256 \ucd5c\uc801\ud654 \ud558\uae30 : (int)(unsigned char)a clang \uae30\uc900 -O3 \uc635\uc158 \uc8fc\uba74 \uc5b4\uc148 \ud55c\uc904 https:\/\/twitter.com\/if1live\/status\/897752172040929280 C\uc5d0\uc11c \ud0c0\uc785 \uce90\uc2a4\ud305\uc744 \uce90\uc2a4\ud305 \uc5f0\uc0b0\uc790\ub77c\uace0"},{"title":"-4 % 3 = ?","link":"https:\/\/if1live.github.io\/posts\/sign-of-mod-operator\/","pubDate":"Thu, 16 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/sign-of-mod-operator\/","description":"% \uc5f0\uc0b0\uc790\ub97c \uc751\uc6a9\ud574\ubcf4\ub294 \uae00\uc744 \uc4f0\uae30\uc804\uc5d0 % \uc5f0\uc0b0\uc790\uc5d0 \ub300\ud574\uc11c \uac04\ub2e8\ud558\uae30 \uae00\uc744 \uc368\ubcf4\uae30\ub85c \ud588\ub2e4. % \ub294 \ub098\uba38\uc9c0 \uc5f0\uc0b0\uc790\ub85c4 % 3 \uc744 \uacc4\uc0b0\ud558\uba74 1\uc774 \ub098\uc628\ub2e4\ub294\uac74 \ub2e4\ub4e4 \uc54c\uace0\uc788\uc744\uac70\ub2e4."},{"title":"\uc708\ub3c4\uc6b0\uc5d0\uc11c \uc2ec\ubcfc\ub9ad \ub9c1\ud06c \ub9cc\ub4e4\uae30","link":"https:\/\/if1live.github.io\/posts\/ntfs-symbolic-link\/","pubDate":"Wed, 15 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ntfs-symbolic-link\/","description":"\uc65c \uc708\ub3c4\uc6b0\uc5d0\uc11c \uc2ec\ubcfc\ub9ad \ub9c1\ud06c\ub97c \ub9cc\ub4dc\ub098? \uc61b\ub0a0 \uc61b\uc801\uc5d0\ub294 \ucef4\ud4e8\ud130\ub97c \ud558\ub2e4\uac00 \uc0c1\ud0dc\uac00 \uc548\uc88b\uc544\uc9c4\uac70 \uac19\uc73c\uba74 \ud3ec\ub9f7\uc744 \ud588\ub2e4. \ud30c\ud2f0\uc158\uc744 C, D \ub4dc\ub77c\uc774\ube0c\ub85c \ubd84\ub9ac\ud558\uace0 \ud3ec\ub9f7\uc744 \ud574\ub3c4 \uc720\uc9c0\ub418\uc5b4"},{"title":"\uc624\ub298\uc740 3, 1, 4, 2\ub85c 10\uc744 \ub9cc\ub4e4\uc5b4 \ubd05\uc2dc\ub2e4!","link":"https:\/\/if1live.github.io\/posts\/make-10-with-overflow\/","pubDate":"Mon, 06 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/make-10-with-overflow\/","description":"\uac1c\uc694 2017\ub144\uc5d0 \ud2b8\uc704\ud130\uc5d0 #10\uc744\ub9cc\ub4e4\uc790 \ub77c\ub294 \ud574\uc2dc\ud0dc\uadf8\uac00 \uc720\ud589\ud55c\uc801 \uc788\ub2e4. \uc774\ub7f0 \ub290\ub08c\uc758 \ud2b8\uc717\uc774\ub2e4. \uc624\ub298\uc740 3, 1, 4, 2\ub85c 10\uc744 \ub9cc\ub4e4\uc5b4 \ubd05\uc2dc\ub2e4! \uc874\uc7ac\ud558\ub294 \ubaa8\ub4e0 \uc5f0\uc0b0\uc744"},{"title":"\ub098\ub217\uc148 \uc5f0\uc0b0\uc744 \uacf1\uc148\uc73c\ub85c \ud504\ub85c\uadf8\ub798\ubc0d \ud560 \uc218 \uc788\uc74c?","link":"https:\/\/if1live.github.io\/posts\/float-divide-without-divide\/","pubDate":"Sun, 05 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/float-divide-without-divide\/","description":"\uac1c\uc694 \uba87\ub2ec\uc804\uc5d0 SNS\ub97c \ud558\ub2e4\uac00 \uc7ac\ubc0c\ub294 \uae00\uc744 \ubd24\ub2e4. \ub098\ub217\uc148 \uc5f0\uc0b0\uc744 \uacf1\uc148\uc73c\ub85c \ud504\ub85c\uadf8\ub798\ubc0d \ud560 \uc218 \uc788\uc74c? \ub098\ub204\uae30\/ \uc5f0\uc0b0\uc790\ub97c \uc548\uc4f0\uace0 \uc815\uc218\uc5d0 \ub300\ud574\uc11c\ub294 \uc5b4\ub5bb\uac8c \uad6c\ud604\ud560\uc9c0 \uc798 \ubaa8\ub974\uaca0"},{"title":"\ub098\ub3c4 \ud574\ubcf4\ub294 Fizz Buzz Test","link":"https:\/\/if1live.github.io\/posts\/fizz-buzz-01\/","pubDate":"Sat, 04 Aug 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/fizz-buzz-01\/","description":"Fizz Buzz Test? Fizz Buzz Test\ub294 \uc0c1\ub2f9\ud788 \uc624\ub798\ub41c \ub5a1\ubc25\uc774\ub2e4. Write a program that prints the numbers from 1 to 100. But for multiples of three print &ldquo;Fizz&rdquo; instead of the number and for the multiples of five print &ldquo;Buzz&rdquo;. For numbers which are multiples of both three and five print &ldquo;FizzBuzz&rdquo;. \uc6b0\ub9ac \ub9d0\ub85c \ud480\uc5b4\uc11c"},{"title":"12 \u2266 x \u2266 0, 12 \u2266 x \u2266 7","link":"https:\/\/if1live.github.io\/posts\/12-lte-x-lte-0\/","pubDate":"Mon, 30 Jul 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/12-lte-x-lte-0\/","description":"SNS\uc744 \ud558\ub2e4 \uc7ac\ubc0c\ub294 \uc9e4\uc744 \ubd24\ub2e4. \ub9d0\ub3c4 \uc548\ub418\ub294 \uac83\ucc98\ub7fc \ubcf4\uc774\uc9c0\ub9cc \uc990\uac70\uc6b4 C\uc758 \uc138\uacc4\uc5d0\uc11c\ub294 \uac00\ub2a5\ud558\ub2e4. 12 \u2266 x \u2266 0 \uc5f0\uc0b0\uc790 \uc6b0\uc120\uc21c\uc704\ub97c \ubcf4\uc790. &lt;, &gt;, &lt;=, &gt;= : \uc67c\ucabd\uc5d0\uc11c \uc624\ub978\ucabd \uc77d"},{"title":"\uc2e4\uc81c \uc0ac\ub840\ub85c \ubcf4\ub294 warning.or.kr","link":"https:\/\/if1live.github.io\/posts\/warning-or-kr-in-real-case\/","pubDate":"Tue, 10 Jul 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/warning-or-kr-in-real-case\/","description":"\uc2ec\uc2ec\ud558\ub2c8 warning.or.kr \uc744 \uae4c\uc790 2018\ub144 5\uc6d4\ucd08\uc5d0 \uc7ac\ubc0c\ub294 \ub5a1\ubc25\uc774 \ub3cc\uc558\ub2e4. \ubb38\uccb4\ubd80\uac00 \ucd94\uc9c4\ud558\ub294 https \uc0ac\uc774\ud2b8 \ucc28\ub2e8 \uacc4\ud68d\uc758 \ucca0\ud68c\ub97c \uc694\uccad\ud569\ub2c8\ub2e4. \uae00\uc744 \uc368\ubcf4\ub294\uac8c \uc5b4\ub5a0\ub0d0\ub294 \uc81c\uc548\uc744 \ubc1b\uc544\uc11c 5"},{"title":"go get {command-line-tool} FAILED","link":"https:\/\/if1live.github.io\/posts\/golang-hugo-is-down\/","pubDate":"Sat, 10 Mar 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/golang-hugo-is-down\/","description":"go get -u github.com\/gohugoio\/hugo : FAIL 2018\ub144 3\uc6d4 9\uc77c, \ube14\ub85c\uadf8 \ube4c\ub4dc \uc2a4\ud06c\ub9bd\ud2b8 \uac1c\uc120 \uc791\uc5c5\uc744 \ud588\ub2e4. \ubcc4\uac83\ub3c4 \uace0\uce58\uc9c0 \uc54a\uace0 \ud478\uc2dc\ud588\ub294\ub370 travis-ci\uc5d0\uc11c \ube4c\ub4dc \ub3c4\uc911 \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\ub2e4. 2"},{"title":"Jupyter\ub97c \ube14\ub85c\uadf8\uc5d0 \uc801\uc6a9\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/apply-jupyter-into-blog\/","pubDate":"Sat, 10 Mar 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/apply-jupyter-into-blog\/","description":"why jupyter? \uc5bc\ub9c8 \uc804\uc5d0 google colabratory \ub77c\ub294 \uc11c\ube44\uc2a4\uac00 \uc788\ub2e4\ub294 \uc18c\ub9ac\ub97c \ub4e4\uc5c8\ub2e4. jupyter\ub97c \uad6c\uae00 \uc11c\ubc84 \uc704\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub2e4\uace0 \ud558\ub354\ub77c. jupyter\ub77c\ub294\uac8c \uc788\ub2e4\ub294\uac78 \uc774\ubbf8 \uc54c\uace0 \uc788\uc5c8"},{"title":"\ud06c\ub86cOS\uc5d0\uc11c \uac19\uc740 \uc571\uc744 2\uac1c \uc774\uc0c1 \uc5ec\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/how-to-open-multiple-webapp-window-in-chrome-os\/","pubDate":"Fri, 23 Feb 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/how-to-open-multiple-webapp-window-in-chrome-os\/","description":"\ud06c\ub86cOS\uc5d0\uc11c \uc6f9\uc571 \ucc3d\uc73c\ub85c \uc5f4\uae30 \ud06c\ub86cOS\uc5d0\uc11c\ub294 \uc6f9\uc0ac\uc774\ud2b8\ub97c \ucc3d\uc73c\ub85c \uc5ec\ub294\uac8c \uac00\ub2a5\ud558\ub2e4. \ucc3d\uc73c\ub85c \uc6f9\uc0ac\uc774\ud2b8\ub97c \uc5f4\uba74 \uc8fc\uc18c\ubc14\uac00 \uc0ac\ub77c\uc838\uc11c \uc6f9\uc0ac\uc774\ud2b8\uac00 \uc544\ub2cc \ud06c\ub86c\uc571\ucc98\ub7fc \ubcf4\uc778\ub2e4."},{"title":"\ud55c\uae00 \uc785\ub825\uc744 \uc9c0\uc6d0\ud558\ub294 \ud06c\ub86cOS \ud130\ubbf8\ub110\uc744 \ucc3e\uc544\uc11c","link":"https:\/\/if1live.github.io\/posts\/find-chrome-os-terminal-which-support-cjk-input\/","pubDate":"Sun, 11 Feb 2018 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/find-chrome-os-terminal-which-support-cjk-input\/","description":"\uac1c\uc694 2017\ub144 7\uc6d4\uc5d0 Acer R11 chromebook\ub97c \uc0c0\ub2e4. \uadf8\ub9ac\uace0 \ud06c\ub86cOS\uc5d0\uc11c \ud55c\uae00 \uc785\ub825\uc774 \uc81c\ub300\ub85c \ub418\ub294 \ud130\ubbf8\ub110\uc744 \ub3cc\ub9ac\uae30 \uc704\ud574\uc11c \uc0bd\uc9c8\ud55c \uae30\ub85d\uc744 \uc694\uc57d\ud588\ub2e4. \ube44\uc601\uc5b4\uc6d0"},{"title":"100 * 0.7 = ?","link":"https:\/\/if1live.github.io\/posts\/amazing-floating-point-100x07\/","pubDate":"Fri, 24 Nov 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/amazing-floating-point-100x07\/","description":"100 * 0.7 = 69 Toy Clash\ub294 10\ub2e8\uacc4\ub85c \uc870\uc808\ud560 \uc218 \uc788\ub294 \ub9c9\ub300 \uadf8\ub798\ud504\ub97c \uc774\uc6a9\ud574\uc11c BGM \uc870\uc808\uc744 \uad6c\ud604\ud588\ub2e4. \uc635\uc158\uc744 \uc800\uc7a5\ud558\ub294 \ubc29\uc2dd\uc73c\ub85c\ub294 \ub514\ubc84\uae45\uc774 \ud3b8\ud55c XML\uc744 \uc0ac\uc6a9\ud588\ub2e4. &lt;volume-bgm&gt;70&lt;\/volume-bgm&gt;"},{"title":"\uc720\ub2c8\ud2f0 \ud504\ub85c\uc81d\ud2b8 \ube4c\ub4dc \uc2dc\uc2a4\ud15c \uad6c\ucd95\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/make-unity-build-system\/","pubDate":"Sun, 12 Nov 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/make-unity-build-system\/","description":"\uac1c\uc694 \ub0b4\uac00 \ub9cc\ub4e0 Toy Clash\ub294 Samsung GearVR, Google Daydream, SteamVR, iOS\ub97c \uc9c0\uc6d0\ud55c\ub2e4. \uc774\uac78\ub85c \ub05d\uc774 \uc544\ub2c8\ub77c \uc870\ub9cc\uac04 Windows Store\ub3c4 \ucd94\uac00\ub420 \uc608\uc815\uc774\ub2e4. \ub0b4\uac00 \uac1c\ubc1c\ud574\ubcf4\ub2c8\uae4c \uc774\uc815\ub3c4 \uac2f\uc218\uc758 \ud50c\ub7ab\ud3fc"},{"title":"\uc720\ub2c8\ud2f0 \ub85c\uadf8 \ubdf0\uc5b4, Sagiri","link":"https:\/\/if1live.github.io\/posts\/introduce-sagiri\/","pubDate":"Sun, 15 Oct 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/introduce-sagiri\/","description":"\uac1c\uc694 \uac8c\uc784 \uac1c\ubc1c\ud558\ub2e4\ubcf4\uba74 \ub85c\uadf8\ub97c \uacc4\uc18d \ubcf4\uac8c \ub41c\ub2e4. \uc720\ub2c8\ud2f0\uc758 \uacbd\uc6b0 \uc5d0\ub514\ud130 \ud658\uacbd\uc5d0\uc11c\ub294 console\ucc3d\uc744 \uc774\uc6a9\ud574\uc11c \ub85c\uadf8\ub97c \ubcfc\uc218\uc788\ub2e4. \ud558\uc9c0\ub9cc \uc708\ub3c4\uc6b0, \uc548\ub4dc\ub85c\uc774\ub4dc, iOS \ud658"},{"title":"GC\uc5c6\uc774 C# Dictionary\uc5d0\uc11c enum\uc744 key\ub85c \uc4f0\uae30","link":"https:\/\/if1live.github.io\/posts\/csharp-dictionary-enum-key-without-gc\/","pubDate":"Sun, 20 Aug 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/csharp-dictionary-enum-key-without-gc\/","description":"C# Dictionary + enum C# Dictionary\ub294 Key-Value\ub85c \ub370\uc774\ud130\ub97c \uc800\uc7a5\ud560\uc218 \uc788\ub294 \uc88b\uc740 \uc790\ub8cc\uad6c\uc870\uc774\ub2e4. enum\uc740 key\ub85c \uc4f0\uae30\uc5d0 \uc88b\uc740 \ud0c0\uc785\uc774\ub2e4. \uadf8\ub807\ub2e4\uba74 \ub458\uc744"},{"title":"C#\uc5d0\uc11c GC\uc5c6\uc774 enum\uc744 int\ub85c \ubcc0\ud658\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/csharp-enum-to-int\/","pubDate":"Thu, 17 Aug 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/csharp-enum-to-int\/","description":"\uc2dc\ub098\ub9ac\uc624: enum\uc73c\ub85c \uc0c1\ud0dc \uad00\ub9ac \uac04\ub2e8\ud55c \uc608\uc81c\ub97c \uc0dd\uac01\ud574\ubcf4\uc790. IState\ub97c \uad6c\ud604\ud55c \ud074\ub798\uc2a4\uac00 \uc788\ub2e4\uace0 \uac00\uc815\ud558\uc790. \uadf8\ub9ac\uace0 \ud074\ub798\uc2a4\ub97c enum\uc73c\ub85c \uad00\ub9ac\ud558\ub824\uace0\ud55c\ub2e4."},{"title":"\uc720\ub2c8\ud2f0\uc5d0\uc11c Switch Platform \uc548\uc4f0\uace0 \ud06c\ub85c\uc2a4 \ud50c\ub7ab\ud3fc \uc9c0\uc6d0\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/unity-cross-platform-without-platform-switch\/","pubDate":"Sun, 06 Aug 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-cross-platform-without-platform-switch\/","description":"switch platform? ios, android\ub97c \ub3d9\uc2dc\uc5d0 \uc9c0\uc6d0\ud558\ub294 \uac8c\uc784\uc744 \uc720\ub2c8\ud2f0\ub85c \ub9cc\ub4e0\ub2e4\uace0 \uac00\uc815\ud574\ubcf4\uc790. \uc548\ub4dc\ub85c\uc774\ub4dc \ube4c\ub4dc, iOS \ube4c\ub4dc\ub97c \ub9cc\ub4e4\ub54c\ub9c8\ub2e4 Switch Platform\uc744 \ud558\uba74 \uc2dc\uac04\uc774 \uc624\ub798 \uac78"},{"title":"Unity Launcher \uc18c\uac1c","link":"https:\/\/if1live.github.io\/posts\/introduce-unity-launcher\/","pubDate":"Sat, 29 Jul 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/introduce-unity-launcher\/","description":"\uc720\ub2c8\ud2f0 \ud504\ub85c\uc81d\ud2b8\ub97c \uc9c4\ud589\ud558\ub2e4\ubcf4\uba74 \uc5ec\ub7ec \ubc84\uc804\uc758 \uc720\ub2c8\ud2f0\uc640 \uc5ec\ub7ec\uac1c\uc758 \ud504\ub85c\uc81d\ud2b8 \ud3f4\ub354\uac00 \ud544\uc694\ud55c \uc77c\uc774 \uc0dd\uae30\uac8c \ub41c\ub2e4. \uac04\ub2e8\ud55c \uc608\uc2dc\ub97c \ub9cc\ub4e4\uc5b4\ubcf4\uc790. \uacfc\uac70\uc758 \ud2b9\uc815 \uc2dc\uc810\uc5d0\uc11c \ube0c\ub80c\uce58\ub97c"},{"title":"NDC 2017 <\ub85c\ubcf4\ub9ac\ucf5c> \ud3ec\uc2a4\ud2b8\ubaa8\ud15c \uc815\ub9ac","link":"https:\/\/if1live.github.io\/posts\/ndc-2017-robo-recall\/","pubDate":"Thu, 11 May 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ndc-2017-robo-recall\/","description":"2017\ub144 4\uc6d4 26\uc77c\uc5d0 NDC 2017\uc744 \uac14\ub2e4\uc654\ub2e4. \uc78a\uc5b4\ubc84\ub9ac\uae30\uc804\uc5d0 \uae30\uc5b5\ub098\ub294 \ub0b4\uc6a9\uc744 \uc815\ub9ac\ud574\ubcf8\ub2e4. \ub098\uc640 \uad00\ub828\uc788\ub294 \ubd80\ubd84 \uc544\ub2c8\uba74 \uae30\ub85d\ub3c4 \uc548\ud574\ub1a8\ub2e4. \uadf8\ub798\uc11c \uc804\uccb4 \ub0b4\uc6a9\uc744 \uc54c"},{"title":"Project Fumika, \uc911\uace0\ucc45 \ucc98\ubd84 \ud504\ub85c\uc138\uc2a4 \uac1c\ubc1c\uae30","link":"https:\/\/if1live.github.io\/posts\/fumika-development-note\/","pubDate":"Tue, 02 May 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/fumika-development-note\/","description":"\uac1c\uc694 \uac1c\ubc1c \uae30\uac04 : 2017\/04\/15 - 2017\/05\/30 \uac1c\ubc1c \uc5b8\uc5b4 : golang, java(android) \ubaa9\ud45c : \uac00\uc7a5 \ub192\uc740 \uac12\uc5d0 \ucc45\uc744 \uc911\uace0\ub85c \ucc98\ubd84\ud558\uc790 \uc800\uc7a5\uc18c : fumika, fumika-scanner \ub098\uc774\uba39\uace0 \uc9d1\uc5d0 \ube4c\ubd99\uc5b4\uc11c \uc0ac\ub2c8\uae4c \uc2ac\uc2ac \ubc14\uac00\uc9c0\ub97c \uae01\ub354\ub77c. \uac00\ucd9c\uc744 \ud574\uc57c\uaca0"},{"title":"\ub098\uc758 warning.or.kr \uac80\uc5f4\uae30","link":"https:\/\/if1live.github.io\/posts\/trade-my-info-warning-or-kr\/","pubDate":"Sat, 29 Apr 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/trade-my-info-warning-or-kr\/","description":"\ub300\ud55c\ubbfc\uad6d\uc5d0\ub294 \uc545\uba85\ub192\uc740 warning.or.kr\uac00 \uc788\ub2e4. \ub098\ub294 warning.or.kr\uc744 \uad6d\uac00\uc5d0\uc11c \uc218\ud589\ud558\ub294 \uac80\uc5f4\uc774\ub77c\uace0 \uc0dd\uac01\ud558\uc9c0\ub9cc \uc774\ub97c \uc9c1\uc811 \ube44\ud310\ud558\uae30\ub294"},{"title":"\uc720\ub2c8\ud2f0\uc5d0\uc11c \uc5d0\uc14b\uc744 \ud30c\uc77c\uc774\ub984 \uae30\ubc18\uc73c\ub85c \uad00\ub9ac\ud558\ub294 \ud3b8\ubc95","link":"https:\/\/if1live.github.io\/posts\/unity-util-asset-name-attribute\/","pubDate":"Mon, 20 Feb 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-util-asset-name-attribute\/","description":"\ubb38\uc81c : \uc624\ub514\uc624 \ud30c\uc77c\uacfc \ud568\uc218\ub97c \uc5b4\ub5bb\uac8c \uc5f0\uacb0\ud560\uac83\uc778\uac00? \uac8c\uc784\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218\uc2ed, \uc218\ubc31\uac1c\uc758 \uc624\ub514\uc624 \ud30c\uc77c\uc774 \uc788\ub2e4. \uadf8\ub9ac\uace0 \uc5b4\ub5a4 \uc0c1\ud669(\ub610\ub294 \ud568\uc218)\uc5d0\uc11c \uc5b4\ub5a4 \uc0ac\uc6b4\ub4dc \ud30c\uc77c\uc744 \uc7ac\uc0dd"},{"title":"[#if UNITY_EDITOR] \uc904\uc774\ub294 \ud3b8\ubc95","link":"https:\/\/if1live.github.io\/posts\/unity-tip-remove-if-unity-editor\/","pubDate":"Mon, 13 Feb 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-tip-remove-if-unity-editor\/","description":"\ub0b4 \uacbd\uc6b0 \uc720\ub2c8\ud2f0 \uc5d0\ub514\ud130 \ud655\uc7a5\uc744 \ub530\ub85c \uc9dc\uae30 \uadc0\ucc2e\uc544\uc11c MonoBehaviour \ub300\uc2e0 VFW\uc758 BaseBehaviour\ub97c \uc790\uc8fc \uc0ac\uc6a9\ud55c\ub2e4. \uadf8\ub798\uc11c \uc5d0\ub514\ud130\uc5d0\uc11c\ub9cc \uc4f8\uc218\uc788\ub294 \ud074\ub798\uc2a4\uac00 \uc2a4\ud06c\ub9bd\ud2b8\uc5d0"},{"title":"int main() { #include \"data.txt\" return 0; }","link":"https:\/\/if1live.github.io\/posts\/x-macro-is-useful\/","pubDate":"Mon, 30 Jan 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/x-macro-is-useful\/","description":"\ud751\ub9c8\ubc95\uc740 \ub9ce\uc774 \uc9dc\ubd24\uc9c0\ub9cc int foo() { #include &ldquo;data.txt&rdquo; } \ub97c \uc774\uae38 \ubb3c\uac74\uc740 \uc544\uc9c1 \uc9dc\uc9c0 \ubabb\ud588\ub2e4. \ub0b4 \uba85\uc791 \ud751\ub9c8\ubc95\uc774\uc5c8\ub294\ub370 \ub9ac\ud399\ud1a0\ub9c1 \ud558\ub824\ub2e4 c++ \uc811\uc5b4\uc11c \ubc29\uce58 \ud2b8\uc704\ud130\uc5d0\uc11c \ub0a8\ub4e4\uc758 \ud751\ub9c8\ubc95 \ucf54\ub4dc\ub97c \ubcf4\ub2e4\uac00"},{"title":"MonoBehaviour\ub97c \ub354 \uc88b\uac8c \ub9cc\ub4e4\uc5b4\uc8fc\ub294 \ub77c\uc774\ube0c\ub7ec\ub9ac, VFW","link":"https:\/\/if1live.github.io\/posts\/unity-library-vfw\/","pubDate":"Sun, 22 Jan 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-library-vfw\/","description":"\uc720\ub2c8\ud2f0\ub85c \uac1c\ubc1c\ud558\ub358 \uac8c\uc784\uc744 \uc5bc\ub9c8\uc804\uc5d0 \ucd9c\uc2dc\ud588\ub2e4. \ub355\ubd84\uc5d0 \uba87\ub2ec\ub9cc\uc5d0 \uc5ec\uc720\uac00 \uc0dd\uacbc\ub2e4. \uadf8\ub3d9\uc548 \ubc14\ubed0\uc11c \ube14\ub85c\uadf8\ub97c \ubc29\uce58\ud588\uc5c8\ub294\ub370 \ub2e4\uc2dc \uc6b4\uc601\ud574\ubcfc\uae4c\ud55c\ub2e4. \uc7ac\ubc0c\ub294 \ub5a1\ubc25\uc774 \ubb50\uac00 \uc788\uc744"},{"title":"\uc720\ub2c8\ud2f0 \uac8c\uc784\uac1d\uccb4, \ud504\ub9ac\ud339\uc5d0 \uc8fc\uc11d \ubd99\uc774\ub294 \ud3b8\ubc95","link":"https:\/\/if1live.github.io\/posts\/unity-tip-game-object-comment\/","pubDate":"Sun, 22 Jan 2017 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-tip-game-object-comment\/","description":"\ucf54\ub529\uc744 \ud558\ub2e4\ubcf4\uba74 \ucf54\ub4dc\uc5d0 \uc5ec\ub7ec\uac00\uc9c0 \uc124\uba85\uc744 \ub123\uace0 \uc2f6\uc744\ub54c\uac00 \uc788\ub2e4. \uc5b4\ub5a4 \uc54c\uace0\ub9ac\uc998\uc744 \uc0ac\uc6a9\ud588\ub294\uc9c0, \uc5b4\ub5a4 \uc6f9\ud398\uc774\uc9c0\uc5d0\uc11c \uae01\uc5b4\uc628 \uc18c\uc2a4\uc778\uc9c0, \uc5b4\ub5a4 \uc778\uc790\ub97c \ud568\uc218\uc5d0 \ub123\uc5b4\uc57c\ud558\ub294\uc9c0&"},{"title":"Unity Scene Web Exporter \uac1c\ubc1c \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/unity-scene-web-exporter-post-mortem\/","pubDate":"Sun, 28 Aug 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/unity-scene-web-exporter-post-mortem\/","description":"\uac1c\uc694 Unity Scene Web exporter Live Demo \ubaa9\uc801 : \uc624\ube0c\uc81d\ud2b8 \ubc30\uce58\ub97c \uc720\ub2c8\ud2f0\uc5d0\uc11c \ud558\uace0\uc2f6\ub2e4 \uac1c\ubc1c \uae30\uac04 : 2016\ub144 3\uc6d4 ~ 2016\ub144 8\uc6d4 \uc5b8\uc5b4 : \uc720\ub2c8\ud2f0 C# Unity3D \/ Three.js screenshot Live Demo : Three.js file=embed.html format=text \uc65c \uc2dc\uc791\ud588\ub294\uac00"},{"title":"\ube14\ub85c\uadf8\ub97c Pelican\uc5d0\uc11c Hugo\ub85c \uc774\uc0ac\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/migration-from-pelican-to-hugo-post-mortem\/","pubDate":"Sat, 20 Aug 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/migration-from-pelican-to-hugo-post-mortem\/","description":"\uac1c\uc694 pelican\uc744 \uc774\uc6a9\ud558\ub294 \ube14\ub85c\uadf8\ub97c hugo \uae30\ubc18\uc73c\ub85c \ubc14\uafb8\uae30 \uae30\uac04 : 2016\/02\/?? ~ 2016\/03\/??, 2016\/07\/31 \uc644\ub8cc \uc8fc\uc694 \uc6d0\uc778 pelican\uc740 \ub290\ub9ac\ub2e4 \ud30c\uc774\uc36c 2.x \ub294 \ub3c4\ud0dc\ub41c\uac70\uac19\ub2e4 \ud30c\uc774\uc36c 3.x \uc758 \ud638\ud658\uc131\uc744"},{"title":"\uc708\ub3c4\uc6b0\uc5d0\uc11c \uae38\uace0 \uc544\ub984\ub2e4\uc6b4 \uacbd\ub85c\uba85\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/dispatch-by-prefix\/","pubDate":"Sun, 05 Jun 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/dispatch-by-prefix\/","description":"MAX_PATH \uc708\ub3c4\uc6b0\ub294 \uacbd\ub85c \ucd5c\ub300\uae38\uc774\uac00 \uc81c\ud55c\ub418\uc5b4 \uc788\ub2e4. MAX_PATH\ub77c\ub294 \uc0c1\uc218\ub85c 260\uc774\ub2e4. \uadf8\ub798\uc11c \ub9e4\uc6b0 \uae34 \ub514\ub809\ud1a0\ub9ac\ub97c \ub9cc\ub4e0 \ub2e4\uc74c\uc5d0 \uc548\uc5d0\uc11c \ud30c\uc77c\uc744 \ub9cc\ub4e4\ub77c\uace0\ud558\uba74 \ub2e4\uc74c\uacfc \uac19"},{"title":"gksrmfdldkscuwudy \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/gksrmfdldkscuwudy-post-mortem\/","pubDate":"Sun, 29 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/gksrmfdldkscuwudy-post-mortem\/","description":"\uac1c\uc694 \uac1c\uc694: \uc54c\ud30c\ubcb3-\ub450\ubc8c\uc2dd \ubcc0\ud658\uae30 \uac1c\ubc1c\uae30\uac04: 2016\/05\/07 00:00 ~ 2016\/05\/07 02:00 (2\uc2dc\uac04) \uc0ac\uc6a9\uc5b8\uc5b4: JavaScript \uc800\uc7a5\uc18c: https:\/\/github.com\/if1live\/gksrmfdldkscuwudy \uc368\ubcf4\uae30: https:\/\/if1live.github.io\/gksrmfdldkscuwudy\/ \uc9d1\uc5d0\uc11c \ub4b9\uad74\uace0 \uc788\ub2e4\uac00 \ub5a1\ubc25\uc774 \ub098\uc640\uc11c \uc790\uae30\uc804\uc5d0 \ub9cc\ub4e4\uc5c8\ub2e4."},{"title":"Noto Sans Thai \uc62c\ubc14\ub974\uac8c \ub80c\ub354\ub9c1\ud558\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/how-to-render-noto-sans-thai-correctly\/","pubDate":"Mon, 16 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/how-to-render-noto-sans-thai-correctly\/","description":"\uac1c\uc694 cocos2d-x 2.x \uae30\ubc18\uc73c\ub85c \uac1c\ubc1c\ub41c \ubaa8\ubc14\uc77c \uac8c\uc784\uc744 \ud0dc\uad6d\uc5d0\uc11c \uc11c\ube44\uc2a4\ud558\ub294 \uc77c\uc744 \uc608\uc804\uc5d0 \ud588\uc5c8\ub2e4. (\uac8c\uc784\uc758 \uae30\ubcf8 \ud3f0\ud2b8\ub294 Noto Sans Thai\uc600\ub2e4) \uac1c\ubc1c\ud558\uba74\uc11c \ud06c\uace0 \uc791\uc740 \ud0dc\uad6d\uc5b4 \ub80c\ub354\ub9c1 \ubc84\uadf8"},{"title":"\uace0\uc815\uc18c\uc218\uc810\uc5d0\uc11c 2\ucc28\uc6d0 \ubca1\ud130\uc758 \ud06c\uae30, \uc815\uaddc\ud654\ub41c \ubca1\ud130 \uacc4\uc0b0\ud558\ub294 \ubc29\ubc95","link":"https:\/\/if1live.github.io\/posts\/vector-length-and-normalize-doom-version\/","pubDate":"Mon, 16 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/vector-length-and-normalize-doom-version\/","description":"\uac1c\uc694 \uac8c\uc784\uc744 \ub9cc\ub4e4\uba74 \ubca1\ud130\ub97c \uc4f0\uac8c \ub41c\ub2e4. \uadf8\ub9ac\uace0 \ubca1\ud130 \ud074\ub798\uc2a4\uc5d0\uc11c 2\uac00\uc9c0 \uae30\ub2a5\uc740 \ub05d\ub3c4 \uc5c6\uc774 \uc0ac\uc6a9\ud558\uac8c \ub41c\ub2e4. \ud558\ub098\ub294 \uc815\uaddc\ud654\ub41c \ubca1\ud130(Normalized vector)"},{"title":"DOOM\uc5d0\uc11c \ubc30\uc6b0\ub294 atan2(y, x) \uad6c\ud604","link":"https:\/\/if1live.github.io\/posts\/atan2-doom-version\/","pubDate":"Sun, 15 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/atan2-doom-version\/","description":"\uac1c\uc694 sin, cos\uac00 \uc788\uc73c\uba74 \uac01\ub3c4\ub97c \ubca1\ud130\ub85c \ubcc0\ud658\ud560 \uc218 \uc788\ub2e4. \ubc18\ub300\ub85c \ubca1\ud130\ub97c \uac01\ub3c4\ub85c \ubcc0\ud658\ud560\ub54c\ub294 atan2\ub97c \uc4f0\uba74 \ub41c\ub2e4. DOOM\uc5d0\uc11c\ub294 atan2\ub97c \uc5b4\ub5bb\uac8c \uad6c\ud604\ud588\ub098 \ucf54\ub4dc"},{"title":"golang \ud328\ud0a4\uc9c0 \uad00\ub9ac\uc758 \uc57d\uc810\uacfc \ub300\uc751\ucc45","link":"https:\/\/if1live.github.io\/posts\/golang-package-management-failure-learned-from-github-kr-text\/","pubDate":"Sat, 14 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/golang-package-management-failure-learned-from-github-kr-text\/","description":"\uac1c\uc694 2016\ub144 3\uc6d4 22\uc77c, npm\uc5d0\uc11c left-pad\uac00 \uc0ac\ub77c\uc9c0\uba74\uc11c node.js\ub97c \uc0ac\uc6a9\ud558\ub294 \uc218\ub9ce\uc740 \uc0ac\ub78c\ub4e4\uc774 \ud63c\ub3c8\uc758 \uce74\uc624\uc2a4\uc5d0 \ube60\uc84c\ub2e4. \uadf8\ub9ac\uace0 2016\ub144"},{"title":"DOOM\uc5d0\uc11c \ubc30\uc6b0\ub294 \uac01\ub3c4 \ud45c\ud604\ud558\ub294 \ubc29\ubc95\uacfc sin, cos \uad6c\ud604\ubc95","link":"https:\/\/if1live.github.io\/posts\/angle-and-sine-doom-version\/","pubDate":"Fri, 06 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/angle-and-sine-doom-version\/","description":"\uac1c\uc694 \ucd5c\uadfc \uace0\uc815 \uc18c\uc218\uc810 \uae30\ubc18\uc73c\ub85c \uac8c\uc784\uc744 \ub9cc\ub4e4\uace0 \uc788\ub2e4. \uc694\uc998\uc5d0\uc11c\ub294 \uace0\uc815 \uc18c\uc218\uc810\uc774 \uc77c\uc885\uc758 \uc783\uc5b4\ubc84\ub9b0 \uae30\uc220\uac00 \ub418\uc5b4\uc11c \ucc38\uace0\ud560 \uc790\ub8cc\uac00 \ub9ce\uc9c0 \uc54a\ub354\ub77c. Fixed-point arithmetic\ub97c"},{"title":"Maya (Markdown \uc804\ucc98\ub9ac\uae30) \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/maya-markdown-preprocessor-post-mortem\/","pubDate":"Fri, 06 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/maya-markdown-preprocessor-post-mortem\/","description":"Why? 2013\ub144\ubd80\ud130 2016\ub144 2\uc6d4\uae4c\uc9c0 \uc815\uc801 \uc0ac\uc774\ud2b8 \uc0dd\uc131\uae30\ub85c pelican\uc744 \uc37c\ub2e4. \ud30c\uc774\uc36c 3.x \uc2dc\ub300\uac00 \uc5f4\ub9ac\uba74\uc11c pelican\uc5d0 \ub300\ud55c \ubd88\ub9cc\uc774 \uc0dd\uaca8\uc11c hugo\ub85c \uac08"},{"title":"\uace0\uc815\uc18c\uc218\uc810 \uad00\ub828 \uc790\ub8cc","link":"https:\/\/if1live.github.io\/posts\/fixed-point-intro\/","pubDate":"Thu, 05 May 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/fixed-point-intro\/","description":"How to use Fixed Point (16.16) Math - by Night Stalker C\uc5d0\uc11c \uace0\uc815\uc18c\uc218\uc810 \ub77c\uc774\ube0c\ub7ec\ub9ac \uad6c\ud604\ud558\uae30 Part 1 of 2 Part 2 of 2 libfixmath C C# Links Doing It Fast - Fixed point arithmetic, loop unrolling, fast 3D transforms Slides The neglected art of Fixed Point arithmetic DOOM Source Wikipedia - Fixed-point arithmetic Doom was the last"},{"title":"\ubc18\ubcf5\ubb38, \uc7ac\uadc0\uc5c6\uc774 \ud130\ubbf8\ub110\uc5d0 \ub2e4\uc774\uc544 \uadf8\ub9ac\uae30","link":"https:\/\/if1live.github.io\/posts\/double-loop-with-array\/","pubDate":"Mon, 21 Mar 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/double-loop-with-array\/","description":"\uac04\ub2e8\ud55c \ubb38\uc81c \uadf9\uc545\uc758 c\uc5b8\uc5b4 \ubb38\uc81c ----- * *** ***** *** * ----- for\ubb38\uc744 \uc774\uc6a9\ud574\uc11c \ubcc4\uc744 \ucd9c\ub825\ud558\ub294 \ubb38\uc81c\uc778\ub370 \uc8fc\ubcc0\uc5d0 \ud504\ub85c\uadf8\ub798\ubc0d\uc880 \ud55c\ub2e4\ub294 \uce5c\uad6c\ub4e4\ub3c4 \uc774 \ubb38\uc81c\ub294 \ubabb\ud480\ub354\uad70\uc694. \uacfc\uc5f0 \uc624\uc720 \uc5ec"},{"title":"delete this \uc774\uc6a9\ud574\uc11c \ud130\ubbf8\ub110\uc5d0 \uc0bc\uac01\ud615 \uadf8\ub9ac\uae30","link":"https:\/\/if1live.github.io\/posts\/recursion-with-destructor\/","pubDate":"Sat, 19 Mar 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/recursion-with-destructor\/","description":"\uc5b4\uc81c \ud68c\uc0ac\uc5d0\uc11c delete this \uc5d0 \ub300\ud574 \uc774\uac83\uc800\uac83 \uc774\uc57c\uae30\ub97c \ud588\uc5c8\ub2e4. \uadf8\ub9ac\uace0 \uafc8\uc5d0\uc11c delete this \ub85c \uc7ac\uadc0\ub97c \uad6c\ud604\ud558\ub294 \ud751\ub9c8\ubc95\uc774 \uc0dd\uac01\ub098\uc11c \uc9dc\ubd24\ub2e4. \ubaa9\ud45c : delete this\ub97c \uc774\uc6a9\ud574\uc11c \ub2e4\uc74c\uacfc \uac19\uc740 \uc0bc"},{"title":"Twitter Image Archive \uac1c\ubc1c \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/twitter-image-archive-post-mortem\/","pubDate":"Thu, 17 Mar 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/twitter-image-archive-post-mortem\/","description":"\uac1c\uc694 \ud2b8\uc717\uc744 \uc2f9 \uc9c0\uc6b0\uace0 \uc2f6\ub2e4\ub294 \uc0dd\uac01\uc774 \ub4e4\uc5c8\ub2e4. \ud2b8\uc704\ud130\uc5d0\ub294 \uac1c\uc18c\ub9ac\ub9cc \uc2f8\uc9c8\ub800\uc9c0\ub9cc \uadf8\ub798\ub3c4 \uc4f8\ub9cc\ud55c \ub370\uc774\ud130\ub97c \uc5bb\uc744\uc218 \uc788\uc9c0 \uc54a\uc744\uae4c\ud574\uc11c \ubc31\uc5c5\uc744 \ud558\uace0 \ud2b8\uc717\uc744 \uc9c0\uc6b0\uae30\ub85c \ub9c8\uc74c\uba39\uc5c8\ub2e4"},{"title":"printf(\"%s\\n\", NULL)\uc758 \ucd9c\ub825 \uacb0\uacfc\ub294?","link":"https:\/\/if1live.github.io\/posts\/printf-with-null-post-mortem\/","pubDate":"Sun, 06 Mar 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/printf-with-null-post-mortem\/","description":"\ub5a1\ubc25\uc758 \uc2dc\uc791 \uc624\ub298\ub3c4 \ud3c9\uc18c\uc640 \ub611\uac19\uc774 \ud2b8\uc704\ud130\ub294 \uc778\uc0dd\uc758 \ub0ad\ube44\ub97c \ub77c\ub294 \uba85\uc5b8\ub300\ub85c \ud589\ub3d9\ud558\ub2e4 \uc7ac\ubc0c\ub294 \ud2b8\uc717\uc744 \ubd24\ub2e4. New Tweet &ldquo;\ud2b8\uc704\ud130\ub9cc \ubcf4\uace0 \uc788\uc9c0 \ub9d0\uace0 %s \ud574\uc57c\uc9c0&rdq"},{"title":"\ubc84\uadf8 \uc0bd\uc9c8\uae30 - \ud30c\uc774\uc36c\uc73c\ub85c \uad6c\ud604\ud55c API \uc11c\ubc84 \ub8e8\ube44\ub85c \ud3ec\ud305\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/http-request-params-trap-python-and-ruby\/","pubDate":"Tue, 01 Mar 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/http-request-params-trap-python-and-ruby\/","description":"\uac04\ub2e8\ud55c \uba85\uc5b8 API \uc11c\ubc84\ub97c \ub9cc\ub4e4\ubcf4\uc790. \ud544\uc694\ud55c \uae30\ub2a5\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4. \uba85\uc5b8 \ubaa9\ub85d\uc744 \ub370\uc774\ud130\ub85c \ubd84\ub9ac\ud55c\ub2e4. \ub098\uc911\uc5d0 \ubaa9\ub85d\uc744 \uc27d\uac8c \uac31\uc2e0\ud560\uc218 \uc788\uc5b4\uc57c\ud55c\ub2e4. \uc11c\ubc84\uc5d0 \uc811\uc18d\ud558\uba74 \uba85\uc5b8\uc911 \ud558\ub098"},{"title":"\uc874\uc7ac\ud558\uc9c0 \uc54a\ub294 \ud0a4\ub85c \ud14c\uc774\ube14\uc5d0 \uc811\uadfc\ud558\uba74?","link":"https:\/\/if1live.github.io\/posts\/if-key-does-not-exist-then\/","pubDate":"Thu, 25 Feb 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/if-key-does-not-exist-then\/","description":"\uc874\uc7ac\ud558\uc9c0 \uc54a\uc740 \ud0a4\ub85c \ud14c\uc774\ube14\uc5d0 \uc811\uadfc\ud588\uc744\ub54c \uac01\uac01\uc758 \uc5b8\uc5b4\ub294 \uc5b4\ub5a4 \uc2dd\uc73c\ub85c \ud589\ub3d9\ud560\uae4c? \uc62c\ubc14\ub974\uc9c0 \uc54a\uc740 \uc778\ub371\uc2a4\ub85c \ub9ac\uc2a4\ud2b8\uc5d0 \uc811\uadfc\ud558\uba74 \uac01\uac01\uc758 \uc5b8\uc5b4\ub294 \uc5b4\ub5a4 \uc2dd\uc73c\ub85c \ud589\ub3d9\ud560\uae4c? \ud30c\uc774\uc36c"},{"title":"\uc62c\ubc14\ub974\uc9c0 \uc54a\uc740 \uac12\uc744 \uc815\uc218\ub85c \ubcc0\ud658\ud558\uae30 - \ud30c\uc774\uc36c vs \ub8e8\ube44","link":"https:\/\/if1live.github.io\/posts\/make-int-from-invalid-value-python-and-ruby\/","pubDate":"Wed, 24 Feb 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/make-int-from-invalid-value-python-and-ruby\/","description":"\uc62c\ubc14\ub974\uc9c0 \uc54a\uc740 \uac12\uc744 \uc815\uc218\ub85c \ubc14\uafb8\ub294 \uc77c\uc740 \uc6f9\uc744 \ud3ec\ud568\ud55c \uc5ec\ub7ec\uac00\uc9c0 \uac1c\ubc1c\uc5d0\uc11c \uc790\uc8fc\ud558\ub294 \uc791\uc5c5 \uc911 \ud558\ub098\uc774\ub2e4. \uc608\ub97c \ub4e4\uc5b4\uc11c \/articles\/?id={int} \ub97c \uad6c\ud604\ud55c \uc11c\ubc84\uac00 \uc788\ub2e4\uace0 \uac00\uc815\ud558\uc790. \/article"},{"title":"\uc0bd\uc9c8\ub85c \uc54c\uc544\ubcf4\ub294 \ud30c\uc774\uc36c\uacfc \ub8e8\ube44\uc758 \uae30\ubcf8 \ub9e4\uac1c\ubcc0\uc218","link":"https:\/\/if1live.github.io\/posts\/default-argument-python-and-ruby\/","pubDate":"Thu, 18 Feb 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/default-argument-python-and-ruby\/","description":"\ud30c\uc774\uc36c\uacfc \ub8e8\ube44\uc758 \ubb38\ubc95 \ucc28\uc774\ub85c \uc778\ud55c \ubc84\uadf8\ub97c \ub2f9\ud55c\uc801\uc740 \uc790\uc8fc \uc788\uc5c8\uc9c0\ub9cc \uae00\ub85c \ub2e4\ub8f0 \uc0dd\uac01\uae4c\uc9c4 (\uac8c\uc744\ub7ec\uc11c) \ud558\uc9c0 \uc54a\uc558\ub2e4. \ud558\uc9c0\ub9cc \uc544\ub798\uc758 \uae00\uc744 \uc77d\uace0 \ud30c\uc774\uc36c\uc640 \ub8e8\ube44\uc758 \ucc28\uc774\ub85c \uc778\ud55c \ubc84"},{"title":"\uc608\uc81c\ub85c \ubcf4\ub294 Python\uacfc Ruby\uc758 \ubb38\ubc95 \ucc28\uc774 - Multiple Assignment","link":"https:\/\/if1live.github.io\/posts\/multiple-assignment-python-and-ruby\/","pubDate":"Sun, 14 Feb 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/multiple-assignment-python-and-ruby\/","description":"\ud30c\uc774\uc36c\uacfc \ub8e8\ube44\ub294 \uac89\ubcf4\uae30\uc5d0\ub294 \ube44\uc2b7\ud574\ubcf4\uc774\uba74\uc11c \uc644\uc804\ud788 \ub2e4\ub974\uac8c \ud589\ub3d9\ud558\ub294 \ubb38\ubc95\uc774 \uc788\ub2e4. \uadf8\ub798\uc11c \ud30c\uc774\uc36c\uc744 \uc0dd\uac01\ud558\uba74\uc11c \ub8e8\ube44 \ucf54\ub4dc\ub97c \uc9dc\uba74 \uc5b4\ucc98\uad6c\ub2c8 \uc5c6\ub294 \ubc84\uadf8\uac00 \uc0dd\uae34\ub2e4. \uc774\ub7f0 \uc77c"},{"title":"\ub514\ubc84\uae45 \ud3ec\uc2a4\ud2b8\ubaa8\ud15c - \ubc15\uc0b4\ub09c \uc18c\uba78\uc790","link":"https:\/\/if1live.github.io\/posts\/buffer-overflow-broken-dtor-debugging-post-mortem\/","pubDate":"Sun, 17 Jan 2016 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/buffer-overflow-broken-dtor-debugging-post-mortem\/","description":"\uac1c\uc694 \ucd5c\uadfc\uc5d0 \ub808\uac70\uc2dc \ucf54\ub4dc\uc5d0 \uc228\uaca8\uc9c4 \ubc84\ud37c \uc624\ubc84\ud50c\ub85c\uc6b0 \ubc84\uadf8\ub97c \uc7a1\ub290\ub77c\uace0 \ud558\ub8e8\ub97c \ub0a0\ub838\uc2b5\ub2c8\ub2e4. \ucc3e\uace0\ub098\ub2c8 \uac04\ub2e8\ud55c \ubc84\uadf8\uc600\uc9c0\ub9cc \ud558\ub8e8\uc529\uc774\ub098 \uac78\ub838\uc2b5\ub2c8\ub2e4. \ubc84\uadf8\ub97c \uc7a1\uc740 \ub2e4\uc74c\uc5d0 \uc0dd\uac01"},{"title":"Go language \uccab\uc778\uc0c1","link":"https:\/\/if1live.github.io\/posts\/golang-first-impression\/","pubDate":"Sun, 20 Dec 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/golang-first-impression\/","description":"\uac1c\uc694 \uc8fc\ub825 \uc5b8\uc5b4\ub97c \ubc14\uafb8\ub294\uac74 \uc5b4\ub824\uc6b4 \uc77c\uc774\ub2e4. \uc8fc\ub825 \uc5b8\uc5b4\ub97c \ubc14\uafb8\uba74 \uc0c1\ub2f9\ud788 \ub9ce\uc740\uac78 \ubc84\ub824\uc57c\ud558\uae30 \ub54c\ubb38\uc774\ub2e4. \uc775\uc219\ud55c \uc138\uacc4\ub97c \ubc84\ub9ac\uace0, \uc9c0\uae08\uae4c\uc9c0 \ubc30\uc6b4 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc78a\uace0, \uc9c0\uae08\uae4c"},{"title":"\ub9e4\ud06c\ub85c \uc0c1\uc218\ub97c \ubcc0\uacbd\ud558\uae30 \uc27d\uac8c \ubc14\uafb8\ub294 \ud3b8\ubc95","link":"https:\/\/if1live.github.io\/posts\/refactoring-c-macro-constant\/","pubDate":"Fri, 27 Nov 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/refactoring-c-macro-constant\/","description":"int main() { printf(&#34;%d\\n&#34;, FOO &#43; 123); \ud504\ub85c\uc81d\ud2b8\ub97c \uc9c4\ud589\ud558\uba74 \uc544\ubb34\ub9ac \uc124\uacc4\ub97c \uc798\ud574\ub3c4 \uc5ec\ub7ec \ud30c\uc77c\uc5d0\uc11c \uc0ac\uc6a9\ub418\ub294 \uc0c1\uc218\ub97c \ud53c\ud560\uc218 \uc5c6\ub2e4. \uc774\ub54c\ub294 \ubcf4\ud1b5 \uacf5\uc720\ud558\ub294 \uc0c1\uc218\/\ud568\uc218 \ub4f1\uc744 \ubaa8\uc544\uc11c \ubcc4\ub3c4\uc758 \ud5e4\ub354 \ud30c\uc77c"},{"title":"\uc544\ub984\ub2e4\uc6b4 PHP array_search()","link":"https:\/\/if1live.github.io\/posts\/alternatives-to-php-array-search\/","pubDate":"Sun, 08 Nov 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/alternatives-to-php-array-search\/","description":"\uac1c\uc694 \ub5a1\ubc25 \ud22c\ucc99 boolean \uac80\uc0ac\ucf54\ub4dc \ub098\ub294 success==false \ud30c\ubc8c https:\/\/twitter.com\/if1live\/status\/662925445990498304 \uc9d1\uc5d0\uc11c \ub4b9\uad74\ub2e4\uac00 \ub72c\uae08\uc5c6\ub294 \ub5a1\ubc25\uc774 \uc0dd\uac01\ub098\uc11c \ud2b8\uc704\ud130\uc5d0 \ud22c\ud45c\ub97c \ub358\uc84c\ub2e4. \ud22c\ud45c\ub97c \ub358\uc9c0\uace0 \ubcf4\ub2c8 \uc0dd\uac01\ubcf4\ub2e4 \ub9ce\uc740 \uc0ac\ub78c\ub4e4\uc774 if(!success) \ub97c \uc120\ud638\ud558\ub354"},{"title":"bit mask\ub85c \uc0ac\ub78c \ub09a\uae30. (flags & MASK == MASK)","link":"https:\/\/if1live.github.io\/posts\/deceiving-code-bitmask\/","pubDate":"Sun, 01 Nov 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/deceiving-code-bitmask\/","description":"\ub09a\uc2dc \ucf54\ub4dc C\/C++ \uc5d0\uc11c\ub294 \ud55c\ubc88\uc5d0 \uc5ec\ub7ec\uac1c\uc758 \ud50c\ub798\uadf8\ub97c \ub118\uae38\ub584 \ube44\ud2b8 \uc5f0\uc0b0\uc790\ub97c \uc0ac\uc6a9\ud558\uae30\ub3c4 \ud55c\ub2e4. \ub2e4\uc74c\uc740 \uac04\ub2e8\ud55c \uc608\uc81c \ucf54\ub4dc\uc774\ub2e4. \uc0ac\uc6a9 \uac00\ub2a5\ud55c \ud50c\ub798\uadf8\ub85c\ub294 fullscreen, stencil, double buffer\uac00 \uc788"},{"title":"HTML textarea\uc758 \uac1c\ud589\ubb38\uc790\ub294 \ubb34\uc5c7\uc77c\uae4c?","link":"https:\/\/if1live.github.io\/posts\/what-is-textarea-newline\/","pubDate":"Sun, 25 Oct 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/what-is-textarea-newline\/","description":"\uac1c\uc694 \ub0b4\uac00 \uc694\uc998\uc5d0 \ub9cc\ub4dc\ub294 \uac83\uc740 HTTP\uae30\ubc18\uc758 \ubaa8\ubc14\uc77c \uac8c\uc784\uc774\ub2e4. \uc11c\ubc84\uc640 \ud074\ub77c\ub294 HTTP\ub85c \ud1b5\uc2e0\uc744 \ud558\uace0 \ud074\ub77c\ub294 \uc11c\ubc84\uc758 \uc694\uccad\uc744 \uc608\uc058\uac8c \uadf8\ub824\uc8fc\ub294 \uc5ed\ud560\uc744 \uc218\ud589\ud55c\ub2e4. \uac04\ub2e8\ud788"},{"title":"\uc2a4\ud0dd \uc9c0\uc5ed \ubcc0\uc218\uc758 \uc8fc\uc18c\uac12\uc744 \uc774\uc6a9\ud55c \ubc84\uadf8","link":"https:\/\/if1live.github.io\/posts\/stack-allocation-voodoo-magic\/","pubDate":"Wed, 07 Oct 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/stack-allocation-voodoo-magic\/","description":"\uc5bc\ub9c8\uc804\uc5d0 gcc\uc640 clang\uc774 \uc815\ub82c\ub418\uc9c0 \uc54a\uc740 \uad6c\uc870\uccb4(\uc608\ub97c \ub4e4\uc5b4 \uad6c\uc870\uccb4\uc758 \ud06c\uae30\uac00 7\ubc14\uc774\ud2b8) \ub97c \uc5b4\ub5a4\uc2dd\uc73c\ub85c \uba54\ubaa8\ub9ac\uc5d0 \ubc30\uce58\ud558\ub294\uc9c0 \ud14c\uc2a4\ud2b8\ud558\ub2e4\uac00 \uc7ac\ubc0c\ub294 \ud604\uc0c1\uc744 \ubc1c\uacac\ud574"},{"title":"Doge Math \uac1c\ubc1c \ud3ec\uc2a4\ud2b8\ubaa8\ud15c","link":"https:\/\/if1live.github.io\/posts\/doge-math-post-mortem\/","pubDate":"Thu, 17 Sep 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/doge-math-post-mortem\/","description":"\uac1c\uc694 2015\/09\/07 ~ 2015\/09\/12 \ub3d9\uc548 \ubed8\uc9d3 \uac1c\ubc1c\ud55c \uac1c\uc778 \ud50c\uc81d\uc744 \uc815\ub9ac\ud558\uae30\ub85c \ud588\ub2e4. \uc9c0\uae08\uae4c\uc9c0\ub294 \uac1c\uc778 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ub300\ud574\uc11c \uae30\ub85d\uc744 \ub0a8\uae30\uc9c0 \uc54a\uc558\uc9c0\ub9cc \uc774\ubc88\uc5d0\ub294 \uba87\uac00\uc9c0 \uc774\uc720\ub85c \uae30\ub85d\uc744 \ub0a8\uaca8\ubcfc\uae4c\ud55c\ub2e4."},{"title":"\ucf54\ub4dc\uc5d0 \ubc18\uac01\/\uc804\uac01\ubb38\uc790 \ub123\uc5b4\uc11c \ub09a\uc2dc\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/deceiving-code-fullwidth-halfwidth\/","pubDate":"Mon, 27 Apr 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/deceiving-code-fullwidth-halfwidth\/","description":"\uac1c\uc694 \ud504\ub85c\uadf8\ub798\uba38 \uba38\ub9ac \ud130\uc9c0\uac8c \ud558\ub294 \ubc29\ubc95 \uc791\uc5c5\uc911\uc778 \ucf54\ub4dc\ub97c \ubab0\ub798 \uc5f4\uc5b4 \uc138\ubbf8\ucf5c\ub860(;) \ud558\ub098\ub97c \uadf8\ub9ac\uc2a4\uc5b4 \ubb3c\uc74c\ud45c(;)\ub85c \ubc14\uafbc\ub2e4 tweet \uc138\ubbf8\ucf5c\ub860(;) \ud558\ub098\ub97c \uadf8\ub9ac\uc2a4\uc5b4 \ubb3c\uc74c\ud45c("},{"title":"\uc0ac\ub78c \ub09a\ub294 strcmp()\uc758 \ub9ac\ud134\ud0c0\uc785 \uc7ac\uc124\uacc4\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/my-strcmp\/","pubDate":"Tue, 21 Apr 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/my-strcmp\/","description":"strcmp()\ub85c \ub09a\uc2dc\ud558\uae30 &ldquo;\uc88b\uc740 \ud568\uc218 \ud568\uc218\uc758 \uc608\ub97c \uc4f0\uc2dc\uc624.&rdquo; \uc774\uac83\uc740 \uc5b4\ub824\uc6b4 \uc9c8\ubb38\uc774\ub2e4. \uc0ac\ub78c\ub9c8\ub2e4 \uc88b\ub2e4\uace0 \uc0dd\uac01\ud558\ub294 \uae30\uc900\uc774 \ub2e4\ub974\uae30 \ub54c\ubb38"},{"title":"\"foo\" \"bar\" == \"foobar\"","link":"https:\/\/if1live.github.io\/posts\/string-literal-concatenation-technique\/","pubDate":"Mon, 20 Apr 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/string-literal-concatenation-technique\/","description":"\uac1c\uc694 print(&#34;foo&#34; &#34;bar&#34; == &#34;foobar&#34;) $ python intro.py True C\uc5d0\ub294 \ubb38\uc790\uc5f4\uacfc \ubb38\uc790\uc5f4 \uc0ac\uc774\uc5d0 \uacf5\ubc31\ubb38\uc790\uac00 \uc874\uc7ac\ud560\ub54c \ub450 \ubb38\uc790\uc5f4\uc744 \ubd99\uc5ec\uc11c \ud558\ub098\uc758 \ubb38\uc790\uc5f4\ub85c \ucde8\uae09\ud558\ub294 \ubb38\ubc95\uc774 \uc788\ub2e4. \uc774\uac83\uc744 String literal concaten"},{"title":"C++ TMP\ub97c \uc774\uc6a9\ud574\uc11c 2015\ub144\uc758 13\uc77c\uc758 \uae08\uc694\uc77c \uacc4\uc0b0\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/friday-the-13th-tmp\/","pubDate":"Mon, 13 Apr 2015 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/friday-the-13th-tmp\/","description":"\uac1c\uc694 2015\ub144 3\uc6d4 15\uc77c\uc5d0 \ucf54\ub529 \uc804\ub825 60\ubd84!\uc5d0\uc11c 13\uc77c\uc758 \uae08\uc694\uc77c\uc744 \uad6c\ud558\ub294 \ubb38\uc81c\ub97c \ub358\uc84c\ub2e4. \ub2e4\uc74c \ud2b8\uc717\uc5d0\uc11c Short coding\uc744 \ubaa9\ud45c\ub85c \uc81c\uc2dc\ud588\uc9c0\ub9cc \ub098\ub294 \uadf8\uac78 \ubabb\ubd24\ub2e4"},{"title":"Process Address Space","link":"https:\/\/if1live.github.io\/posts\/system-programming-process-address-space\/","pubDate":"Mon, 08 Dec 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-programming-process-address-space\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. \uac1c\uc694 \uc120\ud615 \uc8fc\uc18c \uacf5\uac04 : 2 ** BIT_PER_LONG byte, 32bit\uc758 \uacbd\uc6b0 4GB 0 ~ 3GB (PAGE_OFFSET) : Process Address Space 3G\uc758 Process Address"},{"title":"Linux File System","link":"https:\/\/if1live.github.io\/posts\/system-programming-linux-file-system\/","pubDate":"Thu, 04 Dec 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-programming-linux-file-system\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Linux File System File System \ucee4\ub110 \ubc0f \uc678\ubd80 \uba54\ubaa8\ub9ac\uc548\uc758 \ud30c\uc77c \uc2dc\uc2a4\ud15c\uc758 \ub514\ub809\ud1a0\ub9ac\ub97c \uad00\ub9ac\ud558\ub294 \ucee4\ub110 \uc11c\ube0c \uc2dc"},{"title":"\ub098\ub294 unsigned\uac00 \uc2eb\uc5b4\uc694","link":"https:\/\/if1live.github.io\/posts\/i-hate-unsigned\/","pubDate":"Thu, 04 Dec 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/i-hate-unsigned\/","description":"\uac1c\uc694 Youtube, \uac15\ub0a8\uc2a4\ud0c0\uc77c MV \uc870\ud68c\uc218\uac00 32\ube44\ud2b8 \uc815\uc218 \ubc94\uc704\ub97c \ub118\uc5b4\uc130\ub2e4\uace0 \ubc1d\ud600 \ub97c \ubcf4\ub2c8\uae4c \ub313\uae00\uc5d0\uc11c &ldquo;\uc65c unsigned\uc548\uc4f0\uace0 signed\uc37b\ub0d0?&rdqu"},{"title":"Ext2 File System","link":"https:\/\/if1live.github.io\/posts\/system-programming-ext2-file-system\/","pubDate":"Wed, 03 Dec 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-programming-ext2-file-system\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Abstract View of VFS Objects In kernel memory super block dentry inode file VFS, \uc5b4\ub5a4 FS\ub97c \uc4f0\ub354\ub77c\ub3c4 \ub3d9\uc77c File System \ubb38\uc11c \ucc38\uace0 On disk Ext2 Filesystem"},{"title":"Memory Management","link":"https:\/\/if1live.github.io\/posts\/system-programming-memory-management\/","pubDate":"Mon, 01 Dec 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-programming-memory-management\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Linux Memory Management \uac00\uc0c1 \uba54\ubaa8\ub9ac \uc694\uad6c \ud398\uc774\uc9c0 (Demand Paged Virtual Memory) \ubaa8\ub378 \ubb3c\ub9ac \ud398\uc774\uc9c0\uc758 \ub9e4\ud551, \ud560\ub2f9, \uad00\ub9ac 2\ucc28"},{"title":"Memory Addressing","link":"https:\/\/if1live.github.io\/posts\/system-programming-memory-addressing\/","pubDate":"Wed, 26 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-programming-memory-addressing\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Memroy Addressing (Intel x86) \ub17c\ub9ac \uc8fc\uc18c (Logical Address) \uba85\ub839\uc5b4\ub098 \ub370\uc774\ud130\ub97c \ucc38\uc870\ud560\ub54c \uc0ac\uc6a9\ud558\ub294 \uc8fc\uc18c \uc138\uadf8\uba3c\ud2b8 + \uc624\ud504"},{"title":"Kernel Synchronization","link":"https:\/\/if1live.github.io\/posts\/system-prog-kernel-synchronization\/","pubDate":"Mon, 24 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-kernel-synchronization\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc55e\uc73c\ub85c \uc5c6\ub2e4. Kernel Synchronization Kernel Control Paths \ucee4\ub110 \ud568\uc218\ub294 \ub2e4\uc74c \uc694\uccad\uc5d0 \ub530\ub77c\uc11c \uc2e4\ud589\ub41c\ub2e4 \uc720\uc800 \ubaa8\ub4dc\uc5d0\uc11c \uc2e4\ud589\ub418\ub294 \ud504\ub85c\uc138\uc2a4"},{"title":"Signals","link":"https:\/\/if1live.github.io\/posts\/system-prog-signals\/","pubDate":"Sun, 23 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-signals\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc55e\uc73c\ub85c \uc5c6\ub2e4. Signals Signals Signal \ud504\ub85c\uc138\uc2a4\uc5d0 \uc774\ubca4\ud2b8\ub97c \uc54c\ub9b4\ub54c \ubcf4\ub0b4\ub294 \uac83 \ud504\ub85c\uc138\uc2a4\ub098 \ud504\ub85c\uc138\uc2a4 \uadf8\ub8f9\uc5d0 \uac04\ub2e8\ud55c \uba54\uc138"},{"title":"System Calls","link":"https:\/\/if1live.github.io\/posts\/system-prog-system-call\/","pubDate":"Sat, 22 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-system-call\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc55e\uc73c\ub85c \uc5c6\ub2e4. System Call System Call Principles \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uacfc \ud558\ub4dc\uc6e8\uc5b4 \uc0ac\uc774\uc5d0 \ubcc4\ub3c4\uc758 \ub808\uc774\uc5b4\ub97c \ub07c\uc6cc\ub123\ub294\ub2e4 \ud504\ub85c\uadf8\ub798\ubc0d"},{"title":"Timing Measurements","link":"https:\/\/if1live.github.io\/posts\/system-prog-timing-measurements\/","pubDate":"Fri, 21 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-timing-measurements\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc55e\uc73c\ub85c \uc5c6\ub2e4. Timing Measurements Computer Time \ub9ce\uc740 \ucef4\ud4e8\ud130 \uc791\uc5c5\uc740 time-driven time-driven example \uc8fc\uae30\uc801\uc73c\ub85c \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5c5\ub370\uc774\ud2b8 \ud655\uc778 \uc720\uc800\uac00 \uc77c\uc815"},{"title":"C++\uc5d0\uc11c Python\uc758 with statment \uad6c\ud604\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/with-statement-cpp\/","pubDate":"Mon, 10 Nov 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/with-statement-cpp\/","description":"\ud30c\uc774\uc36c\uc5d0\ub294 \uac1d\uccb4\uc758 \uc0dd\uc131\uacfc \uc18c\uba78\uc758 \ubc94\uc704\ub97c \ud655\uc2e4\ud558\uac8c \uc815\ud558\ub294 \ubaa9\uc801\uc73c\ub85c with \ubb38\ubc95\uc774 \uc874\uc7ac\ud55c\ub2e4. \ud30c\uc774\uc36c\uc740 C\uc640 \ub2ec\ub9ac \ube14\ub7ed \uc2a4\ucf54\ud504\ub97c \uc774\uc6a9\ud574\uc11c \uac1d\uccb4\uc758 \uc0dd\uc131\uc8fc\uae30\ub97c \ud1b5\uc81c\ud560\uc218 \uc5c6\uae30 \ub54c"},{"title":"Interrupt and Exceptions","link":"https:\/\/if1live.github.io\/posts\/sytem-prog-study-interrupt-and-exceptions\/","pubDate":"Fri, 17 Oct 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/sytem-prog-study-interrupt-and-exceptions\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Interrupt and Exceptions Interrupt vs Exception Interrupt Asynchronous Interrupt \uc678\ubd80\uc7a5\uce58 -&gt; CPU \uc678\ubd80 \uc7a5\uce58 : keyboard, etc CPU : processor&rsquo;s interrupt pin\uc73c\ub85c \uc785\ub825 \ubc1b\uae30"},{"title":"Linux Process Scheduling","link":"https:\/\/if1live.github.io\/posts\/system-prog-linux-process-schduling\/","pubDate":"Fri, 17 Oct 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-linux-process-schduling\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Linux Process Scheduling Process Schdeuling \uc5b8\uc81c switch \ud560 \uac83\uc778\uac00 + \ubb34\uc5c7\uc744 switch \ud560 \uac83\uc778\uac00? \ubaa9\ud45c \ube60\ub978 \ud504\ub85c\uc138\uc2a4 \ubc18\uc751 \uc2dc\uac04 \ubc31"},{"title":"Linux Processes","link":"https:\/\/if1live.github.io\/posts\/system-prog-linux-processes\/","pubDate":"Fri, 17 Oct 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/system-prog-linux-processes\/","description":"\uc2dc\uc2a4\ud15c \ud504\ub85c\uadf8\ub798\ubc0d \uc2dc\ud5d8 \uacf5\ubd80\ud558\uba74\uc11c \uc815\ub9ac\ud55c \ub0b4\uc6a9\uc774\ub2e4. \ub0b4\uc6a9 \uac31\uc2e0\uc740 \uc5c6\uc744 \uc608\uc815\uc774\ub2e4. Linux Processes Processor Execution Modes Dual Mode Operation User Mode Level 3 \uad8c\ud55c \uc81c\ud55c\ub418\uc5b4\uc788\uc74c \uc77c\ubc18\uc801\uc778 \ud504\ub85c\uadf8\ub7a8 Kernel Mode Level 0 \ucee4\ub110\uc758"},{"title":"importd - Django as a micro-framework","link":"https:\/\/if1live.github.io\/posts\/introduce-importd\/","pubDate":"Mon, 11 Aug 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/introduce-importd\/","description":"What is importd? importd (importd-repo) \ub294 Amit Upadhyay \ub2d8\uc774 django micro framework\uc774\ub2e4. \uc6b0\ub9ac\ub098\ub77c\uc5d0\ub294 \uac70\uc758 \uc54c\ub824\uc838\uc788\uc9c0 \uc54a\uc740\ub370 @cedar101 \ub2d8\uc758 \uc18c\uac1c\ub85c \uc54c\uac8c \ub418\uc5b4\uc11c \uc0ac\uc6a9\ud574\ubd24\ub2e4. \uc9c1\uc811 \uc4f0\uba74\uc11c \ub290\ub080 import"},{"title":"Django\uc6a9 \uc801\uc808\ud55c \ub77c\uc774\ube0c\ub7ec\ub9ac \uc18c\uac1c","link":"https:\/\/if1live.github.io\/posts\/good-django-library\/","pubDate":"Sun, 10 Aug 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/good-django-library\/","description":"2\ub144 \uc804, \uc2e0\uaddc \uc6f9 \ud504\ub85c\uc81d\ud2b8\ub97c django\ub85c \uc2dc\uc791\ud588\uc9c0\ub9cc django\uc758 \uba87\uac00\uc9c0 \ubb38\uc81c \ub54c\ubb38\uc5d0 flask\ub85c \uac08\uc544\ud0d4\ub2e4. \ud504\ub85c\uc81d\ud2b8 \uc2dc\uc791\ud55c\uc9c0 \uc5bc\ub9c8\ub418\uc9c0 \uc54a\uc740 \uc2dc\uc810\uc774\uc5b4\uc11c \ucf54"},{"title":"EZ430-Chronos \uac1c\ubc1c \ud6c4\uae30","link":"https:\/\/if1live.github.io\/posts\/ez430-chronos-development-review\/","pubDate":"Tue, 06 May 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ez430-chronos-development-review\/","description":"\ucd5c\uadfc\uc5d0 ez430-chronos \ub97c \uac00\uc9c0\uace0 \ub180\uba74\uc11c \ub098\ub9cc\uc758 \ud38c\uc6e8\uc5b4 \ub97c \ub9cc\ub4e4\uc5c8\ub2e4. ez430-chronos \uac16\uace0 \ub178\ub294\uac78 \ub05d\ub0b4\uae30 \uc804\uc5d0 \uadf8\ub3d9\uc548 \uc0bd\uc9c8\ud588\ub358 \uacbd\ud5d8+\uad50\ud6c8\uc744 \uc815\ub9ac\ud574\ubd24\ub2e4. (\ubcc4\uac70 \uc5c6\uc9c0\ub9cc) uint8_t, uint16_t, uint32_t, int8_t, int16_t, int32_t \uc77c\ubc18\uc801\uc778"},{"title":"Awesome 3.5 install Guide for Ubuntu 13.10","link":"https:\/\/if1live.github.io\/posts\/awesome-3-5-install\/","pubDate":"Sat, 22 Mar 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/awesome-3-5-install\/","description":"Why not 3.4? On Ubuntu 13.10, current stable version is 3.4.15-1. awesome 3.4 doesn&rsquo;t support different wallpeper on each screen. awesome 3.5 support it. I want this feature.\nObject Install awesome 3.5.3(current stable) on ubuntu 13.10\nTry PPA, but&hellip; I&rsquo;m lazy, so I like package rather than compile. I try using PPA.\nPPA for Arnaud Guignard PPA for Klaus Vormweg After install awesome 3.5, I execute awesome, But crash occur. I decide to install awesome 3."},{"title":"\ud30c\uc774\uc36c \uc5d1\uc140 \uc4f0\uae30 \ub77c\uc774\ube0c\ub7ec\ub9ac \ube44\uad50","link":"https:\/\/if1live.github.io\/posts\/python-excel-library\/","pubDate":"Sun, 23 Feb 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/python-excel-library\/","description":"subtitle: \ubb34\uc5c7\uc744 \uace8\ub77c\uc57c \ud6c4\ud68c\ud558\uc9c0 \uc54a\ub294\uac00? \ub9ac\ub205\uc2a4\uc5d0\uc11c \uad74\ub7ec\uac00\ub294 \ud30c\uc774\uc36c \uae30\ubc18\uc758 \ud1b5\uacc4 \ub3c4\uad6c\ub97c \ub9cc\ub4e0\uc801\uc774 \uc788\ub2e4. \ub9ac\ub205\uc2a4\uc5d0\uc11c\ub3c4 \uad74\ub7ec\uac00\ub294 \uc5d1\uc140 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uba87\uac1c \ucc3e\uc544\ubd24\uace0 \uc9c1\uc811 \uc368\ubcf8"},{"title":"\ud55c\uad6d\ud615 \ubc18\uc751\ud615\uc6f9 \ud504\ub808\uc784\uc6cd\uc744 \ucc3e\uc544\uc11c","link":"https:\/\/if1live.github.io\/posts\/ie7-responsive-web-framework\/","pubDate":"Wed, 05 Feb 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ie7-responsive-web-framework\/","description":"Trade My Info\uc758 GA \ud1b5\uacc4\uc5d0\uc11c \ubcfc \uc218 \uc788\ub4ef\uc774 2014\ub144 2\uc6d4 \uae30\uc900 \uc6b0\ub9ac\ub098\ub77c\uc5d0\uc11c IE 7,8\uc758 \uc0ac\uc6a9\ube44\uc728\uc740 \ub370\ud0d1\uc720\uc800 \uc911 15%\uc774\ub2e4. \uc774\ub97c \ubc84\ub9ac\uace0 \ucc28\uc138\ub300 \uc6f9\uc73c\ub85c \uac00\uace0\uc2f6\uc740 \ub9c8\uc74c"},{"title":"Trade My Info\uc758 GA \ud1b5\uacc4","link":"https:\/\/if1live.github.io\/posts\/trade-my-info-ga\/","pubDate":"Sun, 02 Feb 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/trade-my-info-ga\/","description":"&ldquo;Trade My Info No.1 \uc628\ub77c\uc778 \uac1c\uc778\uc815\ubcf4\uac70\ub798\uc18c&rdquo; trade-my-info \ub97c \ub9cc\ub4e4\ub54c \uadf8\ub0e5 GA\ub97c \ub2ec\uc544\ub1a8\uc5c8\ub2e4. \uadf8\ub7f0\ub370 \uc0dd\uac01\ubcf4\ub2e4 \uc0ac\uc774\ud2b8\uac00 \ud765\ud574\uc11c \uc4f8\ub9cc\ud55c \ud1b5\uacc4\uac00 \ubaa8\uc600\uae38\ub798 \uc815\ub9ac\ud574\ubd24\ub2e4. \uc608\uc0c1 \uc0ac"},{"title":"GitHub Pages\uc640 travis-ci\ub97c \uc5ee\uc740 \uc815\uc801 \ube14\ub85c\uadf8 \uc790\ub3d9\ud654","link":"https:\/\/if1live.github.io\/posts\/static-blog-sample\/","pubDate":"Sat, 01 Feb 2014 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/static-blog-sample\/","description":"\uc774 \ube14\ub85c\uadf8\uc5d0 travis-ci\ub97c \ubd99\uc778 \uae30\ub150 static html generator \uc88b\ub2e4\uace0 \uc601\uc5c5\uc880 \ud558\uace0 \uc57d\ud314\uc790 \uc815\ub9ac \uc548\ud574\ub193\uc73c\uba74 \ub098\uc911\uc5d0 \ub610 \uae4c\uba39\uc744\uae4c\ubd10(\uc2e4\uc81c\ub85c \ud588\ub358 \uc791\uc5c5 \uae00 \uc4f0\uba74\uc11c \ub2e4\uc2dc \ud588\ub294\ub370 \ub610 \uc0bd\uc9c8\ud588"},{"title":"Wireless Latency Benchmark","link":"https:\/\/if1live.github.io\/posts\/wireless-latency-benchmark\/","pubDate":"Thu, 12 Dec 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/wireless-latency-benchmark\/","description":"\uc694\uc998\uc5d0 \uc2a4\ub9c8\ud2b8\ud3f0\uc744 \uac8c\uc784 \ucee8\ud2b8\ub864\ub7ec\ub85c \uc4f0\ub294\uac78 \ub9cc\ub4e4\uace0\uc788\ub2e4. \ucc98\uc74c\uc5d0\ub294 \uc18c\ucf13\uc73c\ub85c \uad6c\ud604\ud574\ubd24\ub294\ub370 latency\uac00 \ubabb\uc4f8\ubb3c\uac74\uc774\ub354\ub77c. PS3 \ucee8\ud2b8\ub864\ub7ec\ub294 \ube14\ud22c\ud22c\uc2a4\ub97c \uc4f4\ub2e4\uae38\ub798 \ube14"},{"title":"2014\ub144 \uc624\ud058\ub7ec\uc2a4 \ud2b8\ub80c\ud2b8 \uc608\uce21","link":"https:\/\/if1live.github.io\/posts\/oculus-2014-predict-trend\/","pubDate":"Sun, 27 Oct 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/oculus-2014-predict-trend\/","description":"\uac1c\uc694 \uc624\ud058\ub7ec\uc2a4 \ub300\uc751\ud574\uc11c \ubb54\uac00\ub97c \uacc4\uc18d \uac1c\ubc1c\ud558\uace0 \uc788\ub294\ub370 \ub0b4\uac00 \uac00\uace0 \uc788\ub294 \uae38\uc774 \ub9de\ub294 \uae38\uc778\uc9c0 \ub098\ub3c4 \ud655\uc2e0\uc744 \ubabb\ud574\uc11c \uc815\ub9ac\ud574\ubcfc\uacb8 \uc368\ubd24\ub2e4. \uc81c\ubaa9\uc740 \uac70\ucc3d\ud558\uac8c 2014\ub144 \uc608\uce21\uc774\uc9c0\ub9cc \ub0b4"},{"title":"LibOVR\uc5d0\uc11c \ucc3e\uc740 \uc801\uc808\ud55c assert macro","link":"https:\/\/if1live.github.io\/posts\/libovr-assert-macro\/","pubDate":"Mon, 14 Oct 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/libovr-assert-macro\/","description":"\uac1c\ubc1c\ud558\ub824\uba74 \uc5b4\uca0b\ub4e0 assert\uac00 \uc788\uae34 \ud574\uc57c\uaca0\ub354\ub77c. \uadfc\ub370 \uae30\ubcf8 assert\ub97c \uc4f0\uba74 callstack \ucd94\uc801\ud558\uae30\uac00 \uadc0\ucc2e\ub354\ub77c. \uadf8\ub798\uc11c \ub9e8\ub0a0 \uac04\ub2e8\ud55c \ub9e4\ud06c\ub85c(int 3) \ub9cc\ub4e4\uc5b4\uc11c \uc0ac\uc6a9\ud588"},{"title":"OculusRift + 3D GUI \uac1c\ubc1c\uae30\ub85d part 1","link":"https:\/\/if1live.github.io\/posts\/oculus-interactive-surface-1\/","pubDate":"Sat, 12 Oct 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/oculus-interactive-surface-1\/","description":"\uc774\uc804\ubd80\ud130 \uacc4\uc18d \ub9cc\ub4e4\uc5b4\ubcf4\uace0 \uc2f6\uc5c8\ub358 Doom3 \uac19\uc740 \ub290\ub08c\uc758 3D GUI \ub370\ubaa8\ub97c \ub9cc\ub4e4\uc5b4\ubd23\ub2e4 \ubaa9\ud45c Oculus SDK\uc640 \uc801\uc808\ud788 \uacb0\ud569\uc2dc\ud0a4\uae30. \ub2e4\ub978 \uc5d4\uc9c4\uc5d0\uc11c \uc624\ud058\ub7ec\uc2a4\ub97c \uc9c0\uc6d0\ud558\ub3c4\ub85d \ub9cc\ub4e0 \ucf54\ub4dc\ub97c \ubcf4\uba74 \ub80c"},{"title":"Build CEGUI 0.8.2 on Windows + OGRE","link":"https:\/\/if1live.github.io\/posts\/cegui-build\/","pubDate":"Wed, 09 Oct 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/cegui-build\/","description":"CEGUI \ube4c\ub4dc \ud558\ub290\ub77c \uc0bd\uc9c8\uc880 \ud574\uc11c \uacf5\uc720\uc6a9 \ubb38\uc11c\ub97c \uc37b\ub2e4. \uc5b4\ucc28\ud53c \uc694\uc998 \ub300\uc138\ub294 \uc720\ub2c8\ud2f0\ub2c8\uae4c \ud300\uc6d0\ub9d0\uace0\ub294 \ubcf4\uc9c0\ub3c4 \uc54a\uaca0\uc9c0. \uc900\ube44\ubb3c OGRE \ube4c\ub4dc\ud574\ub193\uae30. \uadc0\ucc2e\uc73c\uba74 prebuilt library\uac00 \uc788\uc5b4"},{"title":"KGC 2013 \uc624\ud058\ub7ec\uc2a4 \uc138\uc158 \uad6c\uacbd \uc18c\uac10","link":"https:\/\/if1live.github.io\/posts\/kgc2013-oculus-rift\/","pubDate":"Mon, 30 Sep 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/kgc2013-oculus-rift\/","description":"KGC 2013 \uc624\ud058\ub7ec\uc2a4 \uc138\uc158 \uad6c\uacbd \uc18c\uac10"},{"title":"irrlicht engine \uc0ac\uc6a9\uae30","link":"https:\/\/if1live.github.io\/posts\/irrlight-engine-review\/","pubDate":"Mon, 26 Aug 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/irrlight-engine-review\/","description":"subtitle : 2\ub2ec \uc815\ub3c4 \ub9cc\uc838\ubcf4\uace0 \uac04\ub2e8\ud55c \ud504\ub85c\uc81d\ud2b8\ub97c \uc644\ub8cc\ud6c4\uc758 irrlicht \uc0ac\uc6a9 \uc18c\uac10 \uc7a5\uc810 \ube48\uace4\ud55c \uc790\uc758 \uac8c\uc784 \uc5d4\uc9c4 \/ C++\uc758 \ud655\uc7a5\uc131 \uc694\uc998 \ud2b8\ub80c\ub4dc\ub294 unity engine\uc778\uac70 \uac8c\uc784\uc5c5\uacc4 \uc0ac\ub78c \uc544\ub2cc \ub098"},{"title":"Oculus Rift \uac1c\ubc1c\ud558\uba74\uc11c \uad6c\uacbd\ud55c \uc774\uc0c1\ud604\uc0c1","link":"https:\/\/if1live.github.io\/posts\/oculus-rift-artifacts\/","pubDate":"Wed, 21 Aug 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/oculus-rift-artifacts\/","description":"\ucd5c\uadfc\uc5d0 \uc624\ud058\ub7ec\uc2a4 \ub9ac\ud504\ud2b8 \uc7a1\uace0 \uac1c\ubc1c\ud55c\uac8c \uc788\ub2e4. (\ud504\ub85c\uc81d\ud2b8\ub294 \ub9dd\ud588\uc9c0\ub9cc) \uac1c\ubc1c\ud558\uba74\uc11c \uc77c\ubc18 CG\uc5d0\uc11c\ub294 \uc808\ub300\ub85c \ubcfc\uc218\uc5c6\uace0 \uc624\uc9c1 \uc624\ud058\ub7ec\uc2a4 \ub9ac\ud504\ud2b8\uc5d0\uc11c\ub9cc \uad6c\uacbd\ud560\uc218 \uc788\ub294 \uc774\uc0c1 \ub80c"},{"title":"irrlicht-console sample","link":"https:\/\/if1live.github.io\/posts\/irrlicht-console\/","pubDate":"Sun, 28 Jul 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/irrlicht-console\/","description":"irrlicht engine\uc5d0\uc11c quake console\uac19\uc740\uac78 \uc4f0\uace0\uc2f6\uc5b4\uc11c \ud558\ub098 \ub9cc\ub4e4\uc5c8\ub2e4. \uc61b\ub0a0\ubd80\ud130 \uc54c\uace0\uc788\uc5c8\ub358 GLConsole\uc640 \uc774\ubc88\uc5d0 \uc0c8\ub85c \ucc3e\uc740 IrrConsole\ub97c \uc870"},{"title":"Controller for Raspberry Pi + MPD","link":"https:\/\/if1live.github.io\/posts\/rpi-mpd-controller\/","pubDate":"Sat, 20 Jul 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/rpi-mpd-controller\/","description":"Controller for Raspberry Pi + MPD"},{"title":"\uc644\ubcbd\ud55c \uc2f1\uae00\ud134\uc744 \ucc3e\uc544\uc11c - \ud14c\uc2a4\ud2b8","link":"https:\/\/if1live.github.io\/posts\/singleton-test\/","pubDate":"Tue, 18 Jun 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/singleton-test\/","description":"\uc774\uc804\uc5d0 \uc0ac\ub78c\ub4e4\uc774 \ub9ce\uc774 \uc0ac\uc6a9\ud558\ub294 \ubc29\uc2dd\uc758 \uc2f1\uae00\ud134\uc744 \uae4c\ub294 \uae00\uc744 \uc4f0\uace0 \uadf8\uac83\uc744 \ud574\uacb0\ucc45\uc744 \uc815\ub9ac\ud588\uc5c8\ub2e4.(\uc0ac\uc2e4\uc740 \ubcf5\ubd99\uc5d0 \ub354 \uac00\uae5d\uc9c0\ub9cc&hellip;) \ucd5c\uadfc\uc5d0 \uc870\uae08 \ub354 \uc0dd\uac01\ud574\ubcf4"},{"title":"eZ430-Chronos Google OTP \uc0bd\uc9c8\uae30","link":"https:\/\/if1live.github.io\/posts\/ez430-chronos-google-otp\/","pubDate":"Sat, 25 May 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ez430-chronos-google-otp\/","description":"\uba87\ub2ec\uc804\uc5d0 \uc190\ubaa9\uc2dc\uacc4\uac00 \ud544\uc694\ud588\ub2e4 + \uac1c\ubc1c\uac00\ub2a5\uc774\uba74 \ub354 \uc88b\uaca0\uc9c0 \ud574\uc11c eZ430-Chronos\ub97c \ucda9\ub3d9\uc801\uc73c\ub85c \uc0c0\ub2e4. \ub9c9\uc0c1 \uc9c8\ub7ec\ub193\uace0 \uc774\uac78 \uc5b4\ub530 \uc4f8\uae4c \ud558\ub2e4\uac00 \ub9c8\ub545\ud55c \ubc29\ubc95\uc774 \uc0dd"},{"title":"\ub098\ub294 \uc2f1\uae00\ud134\uc774 \uc2eb\uc5b4\uc694","link":"https:\/\/if1live.github.io\/posts\/i-hate-singleton\/","pubDate":"Sun, 19 May 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/i-hate-singleton\/","description":"\uc61b\ub0a0\uc5d0\ub294 \uc2f1\uae00\ud134\uc744 \uc790\uc8fc \uc37c\ub294\ub370 \uc694\uc998\uc5d0\ub294 \uc548\uc4f4\ub2e4. \ub0b4\uac00 \uc2f1\uae00\ud134\uc744 \uc548\uc4f0\uac8c \ub41c \uba87\uac00\uc9c0 \uc774\uc720\uac00 \uc788\ub294\ub370 \ub2e4\uc74c\uacfc \uac19\ub2e4 \uc18c\uba78 \uc2dc\uc810\uc774 \uc788\uae34\ud55c\uac00? static\uc744 \uc774\uc6a9\ud574\uc11c \uad6c\ud604\ud55c \uc2f1"},{"title":"\uc170\uc774\ub354 \ud504\ub85c\uadf8\ub798\ubc0d \uc785\ubb38 for GLSL","link":"https:\/\/if1live.github.io\/posts\/glsl-example\/","pubDate":"Sat, 27 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/glsl-example\/","description":"\ud3ec\ud504\ub2d8\uc758 **\uc170\uc774\ub354 \ud504\ub85c\uadf8\ub798\ubc0d \uc785\ubb38**\uc744 \uc77d\uc73c\uba74\uc11c \uc774\uac70 GLSL\ub85c \uad6c\ud604\ud558\uba74\uc11c \uacf5\ubd80\ud574\ubcf4\uc790 \ud558\uba74\uc11c \ub9cc\ub4e0\uac8c \uc788\ub294\ub370 \uadc0\ucc2e\uc544\uc11c \ubc29\uce58\ud574\ub1a7\ub2e4\uac00 \uc9c0\uae08\uc11c\uc57c \uc815\ub9ac\ud588\ub2e4. \ucc45\uc740"},{"title":"3\ucc28\uc6d0 \uacf5\uac04\uc5d0 2\ucc28\uc6d0 \uac1d\uccb4 \ub80c\ub354\ub9c1","link":"https:\/\/if1live.github.io\/posts\/text-billboard\/","pubDate":"Sun, 21 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/text-billboard\/","description":"\ub514\ubc84\uae45 \uc6a9\ub3c4(\uc608\ub97c \ub4e4\uba74, \ubb3c\uccb4\uc758 \uc88c\ud45c\uac12, \uac8c\uc784\uac1d\uccb4\uc758 \uc0c1\ud0dc\ub4f1\uc744 \ud45c\uc2dc)\ub85c 3\ucc28\uc6d0 \uacf5\uac04\uc0c1\uc5d0 2\ucc28\uc6d0 \uac1d\uccb4(\ud14d\uc2a4\ud2b8 \ud3ec\ud568)\ub97c \uadf8\ub0e5 \ucd9c\ub825\ud558\uace0 \uc2f6\ub2e4. \uc774\ub807\uac8c \uc0ac\uc6a9\ud558\uae30 \uc704\ud574\uc11c"},{"title":"Simple Mesh Library","link":"https:\/\/if1live.github.io\/posts\/simple-mesh\/","pubDate":"Sat, 20 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/simple-mesh\/","description":"glut\uc5d0\ub294 Cube \/ Sphere \/ Cone \/ Teapot&hellip;\ub4f1\uc744 \ub80c\ub354\ub9c1\ud560 \uc218 \uc788\ub294 \ud568\uc218\uac00 \uc874\uc7ac\ud55c\ub2e4. \ud558\uc9c0\ub9cc glut\ub97c \uc548\uc4f0\uace0 glfw\ub97c \uc4f0\uac70\ub098 GLES\ud658\uacbd\uc5d0\uc11c"},{"title":"Vincent Font Library","link":"https:\/\/if1live.github.io\/posts\/vincent-font-library\/","pubDate":"Fri, 19 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/vincent-font-library\/","description":"Public Domain 8x8 Bitmap Font\uc778 Vincent Font\ub97c \uc801\uc808\ud558\uac8c \uc0ac\uc6a9\ud558\uae30 \uc704\ud574\uc11c \ub9cc\ub4e0 \ucf54\ub4dc\ub97c \uc815\ub9ac\ud588\ub2e4. \uc55e\uc73c\ub85c\ub294 \uc0c8\ub85c\uc6b4 OpenGL Text Library\ub97c \uc8fc\ub85c \uc0ac\uc6a9\ud558\uaca0\uc9c0\ub9cc \uc660\uc9c0 \uc544\uae4c\uc6cc\uc11c&he"},{"title":"OpenGL Text Library","link":"https:\/\/if1live.github.io\/posts\/opengl-text-library\/","pubDate":"Wed, 17 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/opengl-text-library\/","description":"OpenGL \uc790\uccb4\uc5d0\ub294 \ud14d\uc2a4\ud2b8 \ucd9c\ub825 \uad00\ub828\ub41c \ud568\uc218\uac00 \uc5c6\ub2e4. \uadfc\ub370 \uac1c\ubc1c\uacfc\uc815, \ub514\ubc84\uae45\uc758 \uc6a9\ub3c4\ub85c \ud14d\uc2a4\ud2b8 \ucd9c\ub825\uc774 \uc788\uc5c8\uc73c\uba74 \ud55c\ub2e4. glut\uae30\ubc18\uc73c\ub85c \uac1c\ubc1c\ud558\uace0 \uc788\ub2e4\uba74 glutStrokeString \/ glutBitmapString \ub97c \uc0ac\uc6a9\ud558\uba74 \ub41c"},{"title":"Raspberry Pi\ub97c \ubb34\uc120\uacf5\uc720\uae30\ub85c \uc4f0\uae30","link":"https:\/\/if1live.github.io\/posts\/raspberry-pi-hostapd\/","pubDate":"Tue, 09 Apr 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/raspberry-pi-hostapd\/","description":"\ub0b4 \ubc29\uc740 \uc9d1\uc758 \ubb34\uc120\ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \ubbf8\ubb18\ud558\uac8c \uc0ac\uac01\uc9c0\ub300\uc5d0 \uc704\uce58\ud55c\ub2e4. \uadf8\ub798\uc11c \ub204\uc6cc\uc11c \uc778\ud130\ub137\ud558\uba74 \uc798 \ub04a\uae34\ub2e4. \uc774\ub97c \ud574\uacb0\ud558\uace0\uc790 \uc9d1\uc5d0\uc11c \uad74\ub7ec\ub2e4\ub2c8\ub294 \ub77c\uc988\ubca0\ub9ac \ud30c\uc774\uc640 \uc61b\ub0a0\uc5d0 \uc0ac\uc11c"},{"title":"Box2D Common Module","link":"https:\/\/if1live.github.io\/posts\/box2d-common\/","pubDate":"Tue, 12 Feb 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/box2d-common\/","description":"Math InvSqrt \/\/\/ This is a approximate yet fast inverse square-root. inline float32 b2InvSqrt(float32 x) { union { float32 x; int32 i; } convert; convert.x = x; float32 xhalf = 0.5f * x; convert.i = 0x5f3759df - (convert.i &gt;&gt; 1); x = convert.x; x = x * (1.5f - xhalf * x * x); return x; } quake3 \uc774\ud6c4\ub85c \uacc4\uc18d \ub9ce\uc774 \uc4f0\uc778\ub2e4\ub294 Fast"},{"title":"C#\uc5d0\uc11c C++ DLL \uc0ac\uc6a9\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/csharp-cpp-dll\/","pubDate":"Tue, 12 Feb 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/csharp-cpp-dll\/","description":"\uac1c\uc694 C#\uc5d0\uc11c C++ dll\uc744 \uc0ac\uc6a9\ud558\uae30 \uc704\ud574\uc11c\ub294 pinvoke(platform invoke)\ub97c \uc0ac\uc6a9\ud558\uba74 \ub41c\ub2e4. \uc544\ub798\uc758 \ub0b4\uc6a9\uc740 \uc0ac\uc6a9\ubc95\uc5d0 \ub300\ud55c \uac04\ub2e8\ud55c \uc815\ub9ac\uc774\ub2e4. \ub0b4\uc6a9 \uc0dd\ub7b5\ud558\uace0 Sample \ub97c \ubc1b\uc544\ub3c4 \ub41c\ub2e4. C++"},{"title":"Python 2.x \ud55c\uae00 \uc778\ucf54\ub529 \uad00\ub828 \uc815\ub9ac","link":"https:\/\/if1live.github.io\/posts\/python-hangul\/","pubDate":"Sun, 03 Feb 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/python-hangul\/","description":"\uac1c\uc694 \ud30c\uc774\uc36c\uc740 \uc591\ub188\uc774 \ub9cc\ub4e0 \uc5b8\uc5b4\ub77c\uc11c \ud55c\uae00\uc744 \uc4f8\ub54c \uace8\uce58\uc544\ud504\ub2e4 (\uc544\ub2c8, \ud55c\uae00\ub9cc \uace8\uce58\uc544\ud508\uac8c \uc9c0\uc625\uc758 \uc5b8\uc5b4 CJK(chiness, japanese, korean)\ub97c \ud3ec\ud568\ud55c \uba40\ud2f0\ubc14\uc774\ud2b8 \uc5b8\uc5b4\ub294 \uc804\ubd80 \uadf8\ub807\uaca0\uc9c0)"},{"title":"Flask Project \uad6c\uc870 \uc608\uc81c","link":"https:\/\/if1live.github.io\/posts\/flask-project-structure\/","pubDate":"Thu, 31 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/flask-project-structure\/","description":"\uc694\uc998\uc5d0\ub294 Flask\ub97c \uc8fc\ub825\uc73c\ub85c \uc0ac\uc6a9\ud558\uace0 \uc788\ub2e4. Flask\ub294 \uac00\ubccd\uac8c \uc4f0\ub294\uac83\uc744 \ubaa9\ud45c\ub85c \uc124\uacc4\ub41c \ub77c\uc774\ube0c\ub7ec\ub9ac\ub2e4 \ubcf4\ub2c8\uae4c \ud504\ub85c\uc81d\ud2b8 \uad6c\uc870\ub97c \uc5b4\ub5bb\uac8c \uc7a1\uc744\uc9c0\uc5d0 \ub300\ud55c \uac00\uc774\ub4dc\ub77c\uc778"},{"title":"Django Project \uad6c\uc870 \uc608\uc81c","link":"https:\/\/if1live.github.io\/posts\/django-project-structure\/","pubDate":"Wed, 30 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/django-project-structure\/","description":"\ucd5c\uadfc\uc5d0 Django\ub85c \ucf54\ub529\ud55c\uc801\uc774 \uc788\ub2e4. django\ub294 \uae30\ubcf8\uc801\uc73c\ub85c \ud504\ub85c\uc81d\ud2b8 \ud2b8\ub9ac\uc5d0 \uc801\uc808\ud55c \uc81c\uc57d\uc774 \uac78\ub824\uc788\uae30 \ub584\ubb38\uc5d0 \uad73\uc774 \uc2e0\uacbd\uc548\uc4f0\uace0 django \uac00\uc774\ub4dc\ub77c\uc778\uc5d0\uc11c \uc81c\uacf5\ud558\ub294\ub300"},{"title":"Uber Shader","link":"https:\/\/if1live.github.io\/posts\/uber-shader\/","pubDate":"Sun, 27 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/uber-shader\/","description":"\uae30\ubcf8 \uac1c\ub150\uc740 \ud55c \uac1c\uc758 \uc250\uc774\ub354 \uc18c\uc2a4\ub97c \uc9dc\uace0 ifdef\/ifndef \uc9c8\uc744 \ud574\uc11c \uc250\uc774\ub354 \ucf54\ub4dc\ub97c \uc5ec\ub7ec \ud615\ud0dc\ub85c \ubcc0\ud654\uc2dc\ud0a4\ub294 \uac83\uc774\ub2e4. \uc774\uac83\uc774 \uc758\ubbf8\uac00 \uc788\ub294 \uc774\uc720\ub294 \uc5ec\ub7ec \uc885\ub958\uc758 \uad11\uc6d0\ubaa8\ub378\uc744 \uae30\ubc18\uc73c\ub85c \uc250\uc774\ub354\ub97c"},{"title":"auto_ptr\uc744 \uc37b\ub294\ub370 \uc18c\uba78\uc790\uac00 \ubd88\ub9ac\uc9c0 \uc54a\ub294\ub2e4?","link":"https:\/\/if1live.github.io\/posts\/auto-ptr\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/auto-ptr\/","description":"auto_ptr\uc740 \uc544\uc8fc \uac04\ub2e8\ud55c \uc2a4\ub9c8\ud2b8 \ud3ec\uc778\ud130\uc758 \uc77c\uc815\uc73c\ub85c \ub3d9\uc801\ud560\ub2f9\ub41c \uac1d\uccb4\ub97c \uc790\ub3d9\uc73c\ub85c delete\ud558\ub294\ub370 \uc4f0\uc778\ub2e4. \ud558\uc9c0\ub9cc \uc798\ubabb\ub41c \ucf54\ub529\uc744 \ud558\uba74 \uc18c\uba78\uc790\uac00 \ud638\ucd9c\ub418\uc9c0 \uc54a"},{"title":"Box2d Block Allocator","link":"https:\/\/if1live.github.io\/posts\/box2d-block-allocator\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/box2d-block-allocator\/","description":"\uc791\uc740\ud06c\uae30\uc758 \uac1d\uccb4\ub97c \ub9ce\uc774 \ud560\ub2f9\ud560\ub54c \uc0ac\uc6a9\ub418\ub294 \ud560\ub2f9\uc790\uc774\ub2e4. \uae30\ubcf8\uc124\uc815\uac12\uc758 \uacbd\uc6b0, \ub300\ub7b5 640byte\ubcf4\ub2e4 \uc791\uc740 \uba54\ubaa8\ub9ac\ub97c \ub9ce\uc774 \uc694\uccad\ud560\ub54c \uc0ac\uc6a9\ud55c\ub2e4 \uae30\ubcf8 \uad6c\uc870 Chunk, Block"},{"title":"Box2d Stack Allocator","link":"https:\/\/if1live.github.io\/posts\/box2d-stack-allocator\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/box2d-stack-allocator\/","description":"\uad6c\uc870 \uace0\uc815\ud06c\uae30\ub85c b2_stackSize(\uae30\ubcf8\uac12 100kb)\uc758 \uba54\ubaa8\ub9ac\ub97c \uac00\uc9c0\uace0 \uc774\uac83\uc744 \ub9e8\uc55e\ubd80\ud130 \ucabc\uac1c\uc11c(\uadf8\ub798\uc11c \uc2a4\ud0dd\uae30\ubc18) \uc0ac\uc6a9\ud558\ub294 \ud560\ub2f9\uc790\uc774\ub2e4. \uad6c\uc870\uac00 \ub2e8"},{"title":"C#\uc758 \ud504\ub85c\ud37c\ud2f0 C++\uc5d0\uc11c \uc4f0\uae30","link":"https:\/\/if1live.github.io\/posts\/charp-like-property\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/charp-like-property\/","description":"\ubcf8\ubb38\uc744 \uc77d\uae30\uc804\uc5d0 \uc544\ub798\uc758 2\uac1c\uc758 \ud398\uc774\uc9c0\ub97c \uc77d\uc5b4\ubcf4\uba74 \uc774\ud574\uc5d0 \ub3c4\uc6c0\uc774 \ub420\uac83\uc774\ub2e4. \uc0ac\uc2e4\uc0c1 \ub0b4\uac00 \ub9cc\ub4e0 \ucf54\ub4dc\ub294 \uc704\uc758 2\uac1c\ub97c \ub0b4 \ubc29\uc2dd\ub300\ub85c \ubb36\uc740\uac83\ubfd0\uc774\ub2e4 [Property(programming)][1] [C++\uc5d0\uc11c \uc18d\uc131 \uad6c\ud604\ud558"},{"title":"cocos2d-x \uba54\ubaa8\ub9ac \uad00\ub9ac\uc5d0 \ub300\ud55c \uac04\ub2e8\ud55c \uc815\ub9ac","link":"https:\/\/if1live.github.io\/posts\/cocos2dx-memory-management\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/cocos2dx-memory-management\/","description":"cocos2d-x\ub294 cocos2d\ub97c \uac70\uc758 \uadf8\ub300\ub85c \ud3ec\ud305\ud55c 2d\uac8c\uc784 \uc5d4\uc9c4\uc774\ub2e4. \uc6d0\uc791\uc774 objc \uae30\ubc18\uc778 cocos2d\ub97c C++\ub85c \uc62e\uacbc\uc73c\ub2c8 \uc644\uc804\ud788 \ub611\uac19\uc9c0\ub294 \uc54a\ub2e4. \ud2b9\ud788"},{"title":"memset\ub85c \ud074\ub798\uc2a4 \ucd08\uae30\ud654 \uc27d\uac8c \ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/class-init-with-memset\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/class-init-with-memset\/","description":"\uc77c\ubc18\uc801\uc73c\ub85c C++\uc5d0\uc11c\ub294 \uba64\ubc84\ubcc0\uc218 \ucd08\uae30\ud654\ub97c \ub2e4\uc74c\uacfc \uac19\uc740 \ubb38\ubc95\uc73c\ub85c \ud55c\ub2e4. class SomeClass { public: SomeClass() : a(0), b(0) {} private: int a; float b; }; \ub9cc\uc57d \ud074\ub798\uc2a4\uc548\uc5d0 \uba64\ubc84\ubcc0\uc218\uac00 \ub9ce\ub2e4\uba74 \uc704\uc640 \uac19\uc740 \ubb38\ubc95\uc73c\ub85c \ucf54"},{"title":"\uac8c\uc784 \uc88c\ud45c\uacc4\uc5d0 \ub300\ud55c \uace0\ucc30","link":"https:\/\/if1live.github.io\/posts\/game-coord-system\/","pubDate":"Fri, 25 Jan 2013 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/game-coord-system\/","description":"\uc88c\ud45c\uacc4\uc5d0 \ub300\ud55c \uace0\ucc30 3D \uadf8\ub798\ud53d\uc2a4 \uc88c\ud45c\uacc4\uc5d0\ub294 \ud06c\uac8c 2\uac00\uc9c0(\uc67c\uc190 \uc88c\ud45c\uacc4\/\uc624\ub978\uc190 \uc88c\ud45c\uacc4)\uac00 \uc788\ub2e4. \uc67c\uc190\/\uc624\ub978\uc190 \uc88c\ud45c\uacc4 \ubaa8\ub450 \uc67c\ucabd..\uc624\ub978\ucabd \ubc29\ud5a5\uc744 +x, \uc544\ub798..\uc704\ucabd \ubc29"},{"title":"\uc708\ub3c4\uc6b0 \ud658\uacbd\uc5d0\uc11c emacs HOME \ub514\ub809\ud1a0\ub9ac \ubcc0\uacbd\ud558\uae30","link":"https:\/\/if1live.github.io\/posts\/emacs-home-dir\/","pubDate":"Mon, 31 Dec 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/emacs-home-dir\/","description":"\uc720\ub2c9\uc2a4 \ud658\uacbd\uc758 \uacbd\uc6b0 \uc774\ub9e5\uc2a4 \uc124\uc815\ud30c\uc77c\uc740 \/home\/user_name\/.emacs\uc5d0 \uc704\uce58\ud55c\ub2e4. \uadf8\ub7f0\ub370 \uc708\ub3c4\uc6b0\ub77c\uba74 \uc800\ub7f0 \uacbd\ub85c\uac00 \uc874\uc7ac\ud560\ub9ac\uac00 \uc5c6\uc796\uc544? \uc708\ub3c4\uc6b0\uc758"},{"title":"\uc774\ub9e5\uc2a4 \ub0b4\uc7a5 \ud55c\uae00\uc785\ub825\uae30 \uc0ac\uc6a9\ud558\uae30 + \uae30\ubcf8\ud55c\uae00\uc124\uc815","link":"https:\/\/if1live.github.io\/posts\/emacs-hangul-key\/","pubDate":"Mon, 31 Dec 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/emacs-hangul-key\/","description":"\uc774\ub9e5\uc2a4\ub294 \ud2b9\uc720\uc758 \uad34\ub784\ud55c \uaddc\ubaa8\ub355\ubd84\uc5d0 \ub2e4\ub978 \uc5d0\ub514\ud130\uc5d0\uc11c\ub294 \uac70\uc758 \ucc3e\uc544\ubcfc\uc218 \uc5c6\ub294 \uae30\ub2a5\uc778 \ud55c\uae00\uc785\ub825\uae30\uac00 \ub0b4\uc7a5\ub418\uc5b4\uc788\ub2e4. (\uadf8\ub7ec\ub2c8\uae4c \ud55c\uc601\ud0a4\ub97c \ub20c\ub7ec\uc11c \ud55c\uae00\/\uc601\ubb38 \uc785\ub825\uc0c1\ud0dc\ub97c \ubc14"},{"title":"\uc9d1\ud569 \uae30\ubc18 \ud0dc\uadf8 \uc2dc\uc2a4\ud15c \uc124\uacc4","link":"https:\/\/if1live.github.io\/posts\/set-based-tag\/","pubDate":"Tue, 18 Dec 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/set-based-tag\/","description":"\uc9d1\ud569 \uae30\ubc18 \ud0dc\uadf8 \uc2dc\uc2a4\ud15c \uc124\uacc4"},{"title":"\uc708\ub3c4\/ios\/\uc548\ub4dc\ub85c\uc774\ub4dc\ub97c \ucee4\ubc84\ud560\uc218 \uc788\ub294 PCH \uad6c\uc870 \uc7a1\uae30","link":"https:\/\/if1live.github.io\/posts\/cross-platform-stdafx\/","pubDate":"Sat, 08 Dec 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/cross-platform-stdafx\/","description":"\uc708\ub3c4\/ios\/\uc548\ub4dc\ub85c\uc774\ub4dc\ub97c \ucee4\ubc84\ud560\uc218 \uc788\ub294 PCH \uad6c\uc870 \uc7a1\uae30"},{"title":"cocos2d-x 1.x->2.0\uc73c\ub85c \ubcc0\ud558\uba74\uc11c \ubc14\ub010 \ubd80\ubd84 :: CCPoint","link":"https:\/\/if1live.github.io\/posts\/ccpoint-lua\/","pubDate":"Tue, 04 Dec 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/ccpoint-lua\/","description":"cocos2d-x 1.x-&gt;2.0\uc73c\ub85c \ubcc0\ud558\uba74\uc11c \ubc14\ub010 \ubd80\ubd84 :: CCPoint"},{"title":"\ud50c\ub7ab\ud3fc \ub9e4\ud06c\ub85c \ucd94\uac00 \uc120\uc5b8 \uc5c6\uc774 \uc708\ub3c4\/iOS\/\uc548\ub4dc\ub85c\uc774\ub4dc \uad6c\ubd84\ud558\ub294 \ub9e4\ud06c\ub85c","link":"https:\/\/if1live.github.io\/posts\/platform-macro\/","pubDate":"Fri, 30 Nov 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/platform-macro\/","description":"\ud50c\ub7ab\ud3fc \ub9e4\ud06c\ub85c \ucd94\uac00 \uc120\uc5b8 \uc5c6\uc774 \uc708\ub3c4\/iOS\/\uc548\ub4dc\ub85c\uc774\ub4dc \uad6c\ubd84\ud558\ub294 \ub9e4\ud06c\ub85c"},{"title":"C++ namespace \ub4e4\uc5ec\uc4f0\uae30 \ubc29\uc9c0\ud558\ub294 \ud3b8\ubc95","link":"https:\/\/if1live.github.io\/posts\/namespace-indent\/","pubDate":"Wed, 28 Nov 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/namespace-indent\/","description":"C++ namespace \ub4e4\uc5ec\uc4f0\uae30 \ubc29\uc9c0\ud558\ub294 \ud3b8\ubc95"},{"title":"C++ \ub2e4\uc911\uc0c1\uc18d(interface) \uad00\ub828 \uc0bd\uc9c8 \uc790\ub8cc","link":"https:\/\/if1live.github.io\/posts\/cpp-casting\/","pubDate":"Tue, 27 Nov 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/cpp-casting\/","description":"C++ \ub2e4\uc911\uc0c1\uc18d(interface) \uad00\ub828 \uc0bd\uc9c8 \uc790\ub8cc"},{"title":"\uc0dd\uc131\uc790,\uc18c\uba78\uc790 \uac15\uc81c\ud638\ucd9c","link":"https:\/\/if1live.github.io\/posts\/call-ctor-dtor\/","pubDate":"Mon, 26 Nov 2012 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/call-ctor-dtor\/","description":"\uac1c\uc694 \uc131\ub2a5, \ud639\uc740 \ub514\ubc84\uae45\uc744 \uc704\ud574\uc11c \ucee4\uc2a4\ud140 malloc\/free\ub97c \uc4f0\ub294 \uc77c\uc774 \uc787\ub2e4. \ubb38\uc81c\ub294 malloc\/free\ub85c \uc0ac\uc6a9\ud558\uba74 \uc18c\uba78\uc790\/\uc0dd\uc131\uc790\uac00 \ud638\ucd9c\ub418\uc9c0 \uc54a\uae30 \ub584"},{"title":"Markdown Syntax Guide","link":"https:\/\/if1live.github.io\/posts\/markdown-syntax-guide\/","pubDate":"Thu, 11 Mar 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/markdown-syntax-guide\/","description":"<p>This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.<\/p>"},{"title":"Rich Content","link":"https:\/\/if1live.github.io\/posts\/rich-content\/","pubDate":"Wed, 10 Mar 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/rich-content\/","description":"<p>Hugo ships with several <a href=\"https:\/\/gohugo.io\/content-management\/shortcodes\/#use-hugos-built-in-shortcodes\">Built-in Shortcodes<\/a> for rich content, along with a <a href=\"https:\/\/gohugo.io\/about\/hugo-and-gdpr\/\">Privacy Config<\/a> and a set of Simple Shortcodes that enable static and no-JS versions of various social media embeds.<\/p>"},{"title":"Placeholder Text","link":"https:\/\/if1live.github.io\/posts\/placeholder-text\/","pubDate":"Tue, 09 Mar 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/placeholder-text\/","description":"<p>Lorem est tota propiore conpellat pectoribus de pectora summo.<\/p>"},{"title":"Math Typesetting","link":"https:\/\/if1live.github.io\/posts\/math-typesetting\/","pubDate":"Mon, 08 Mar 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/math-typesetting\/","description":"<p>Mathematical notation in a Hugo project can be enabled by using third party JavaScript libraries.<\/p>"},{"title":"Emoji Support","link":"https:\/\/if1live.github.io\/posts\/emoji-support\/","pubDate":"Fri, 05 Mar 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/emoji-support\/","description":"<p>Emoji can be enabled in a Hugo project in a number of ways.<\/p>"},{"title":"Maya Test Page","link":"https:\/\/if1live.github.io\/posts\/maya-test\/","pubDate":"Sun, 03 Jan 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/maya-test\/","description":"maya is markdown preprocessor for static site generator.\nview embed file.\nimport json x = json.dumps({ &#39;name&#39;: &#39;maya&#39;, &#39;repo&#39;: &#39;github.com\/if1live\/maya&#39;, }, indent=2) print(x) embed with line range.\nx = json.dumps({ &#39;name&#39;: &#39;maya&#39;, &#39;repo&#39;: &#39;github.com\/if1live\/maya&#39;, }, indent=2) execute $ python sample.py { &#34;repo&#34;: &#34;github.com\/if1live\/maya&#34;, &#34;name&#34;: &#34;maya&#34; } gist youtube"},{"title":"Jupyter Test Page","link":"https:\/\/if1live.github.io\/posts\/jupyter-test\/","pubDate":"Sat, 02 Jan 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/jupyter-test\/","description":"Colaboratory\uc5d0 \uc624\uc2e0 \uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4! Colaboratory\ub294 \ud14d\uc2a4\ud2b8, \ucf54\ub4dc, \ucf54\ub4dc \ucd9c\ub825\uc744 \ud558\ub098\uc758 \uacf5\ub3d9\uc791\uc5c5 \ubb38\uc11c\ub85c \ud1b5\ud569\ud574 \uc8fc\ub294 \ub370\uc774\ud130 \ubd84\uc11d \ub3c4\uad6c"},{"title":"Markdown Test Page","link":"https:\/\/if1live.github.io\/posts\/markdown-test\/","pubDate":"Fri, 01 Jan 2010 00:00:00 +0000","guid":"https:\/\/if1live.github.io\/posts\/markdown-test\/","description":"markdown syntax h1 heading h2 heading h3 heading h4 heading h5 heading h6 heading normal Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry&rsquo;s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into"}]}}