전체 글

전체 글

    char varchar 차이

    char는 고정 '문자' 길이다 varchar는 가변 '문자' 길이다 예를 들어 name char(4) 라고 선언하면 무조건 네 개의 문자 공간을 확보해서 저장한다. 그래서 name에 '코드'라는 문자열을 저장하게 되면 '코드 '

    시간복잡도 개념, Big-O(빅 오) 표기법, 점근적 표기법 설명

    영상 내용을 글로도 정리했습니다 아주 아주 쉽게 설명합니다 :) 예제로 알아보는 시간 복잡도(time complexity) 개념 아래와 같은 코드가 있습니다. 이 코드는 정수 타입의 배열 inputs과 multiplier를 파라미터로 받습니다. 내부적으로 어떻게 동작하는지 살펴보면, inputs에 있는 모든 정수들을 mutiplier로 곱해줘서 그 결과를 새로운 정수 타입의 배열인 nums에 담아 최종적으로 그 nums를 반환하고 있습니다. int[] multiply(int[] inputs, int multiplier) { int[] nums = new int[inputs.length]; for (int i = 0 ; i < inputs.length ; i++) { nums[i] = inputs[i] *..

    개발자 성장 #10 우분투!

    우분투(Ubuntu)를 아는가? 아마도 리눅스 운영체제 배포판이 제일 먼저 떠오를 텐데 지금 말하고 싶은 것은 운영체제가 아니라 이 우분투의 뜻이다. 우분투는 아프리카에서 가장 널리 쓰이는 말 중 하나인 반투어에서 유래된 말인데, 그 의미가 참 좋다. "우분투! 당신이 있으니 제가 있습니다" '당신이 있으니 제가 있습니다!'라는 뜻을 가진 우분투를 조금 더 들여다보면, 보다 다양한 의미를 만나게 된다. 우분투는 인간은 혼자서는 살아갈 수 없는 존재라는 것을 강조하거나, 마음을 열고 다른 사람을 기꺼이 도우며 다른 사람의 생각을 인정할 줄 아는 정신을 추구한다. 개발자도 이 우분투 정신이 필요하다. 동료를 믿고 의지하고 인정할 때 우리는 건강하게 성장할 수 있다. 개발은 거의 대부분이 팀플레이다. 작은 팀..

    개발자 성장 #9 비참해지거나 교만해지거나

    개발자로서 첫 직장 생활을 정말 좋은 곳에서 시작했다. 훌륭한 개발자분들이 많았기 때문이다. 그에 비해 나는 너무 부족한 것 같았다. 물론 신입으로 시작했기 때문에 아무것도 모르는 것이 당연하지만, 회의에 들어가면 분명 한국인들끼리 한국말로 대화하는데 그 내용을 따라갈 수가 없었다. 기술적인 용어든 서비스 도메인 용어든 내가 아는 것이 너무 없었고 어떤 논리로 대화를 하는지 이해하기 어려웠다. 남들은 다 잘하는데 나만 못하는 것 같았다. 마음에 여유는 점점 사라졌고 안 그래도 낯선 환경과 기술은 더욱 어렵게만 느껴졌다. 그렇게 나는 쭈구리가 되어갔다. 열등감이 폭발했고 자존감이 바닥을 쳤다. 비참했다. 조금만 막혀도 낙심이 되고 내 길이 아닌가 싶었다. 이런 상황 속에서 제대로 지식을 소화해낼 리가 없었..

    개발자 성장 #8 헉! 나도 모르게 그만..

    개발자에게 삽질은 숙명과도 같다. 새로운 기술을 쓰다가 막혔을 때, 개발했는데 예상대로 동작하지 않을 때, 우리는 끊임없이 삽질을 하게 된다. 이번 편은 삽질의 시간을 줄일 수 있는 팁을 얘기해 보려 한다. 삽질이 성장과 무슨 상관이냐고 할 수 있겠지만 생각보다 상관이 있다. 일단 삽질 시간을 줄이게 되면 절약된 시간만큼 내가 더 빠르게 성장할 수 있다. 또한 삽질 시간을 단축시키기 위해 차근차근 문제에 접근하다 보면 점점 논리적으로 사고하는 능력이 자라나서 문제 해결을 잘하는 개발자로 성장할 수 있다. 삽질을 통해 배우는 것이 있기 때문에 성장의 자양분이 되기도 한다. 삽질의 원인은 다양하다. 개인 차가 있겠지만 내 경우엔 나도 모르게 잘못된 가정을 하고 문제를 해결하려고 했기 때문에 삽질했던 경우가 ..