분류 전체보기
-
구글 애드센스 승인 후기일기 2019. 4. 18. 21:20
올해 초부터 일일 방문자가 평균 80명 정도를 오락가락하기 시작하자 전회사가 주는 박봉에 시달리며 돈독이 오를대로 오른 내 마음 한켠도 부풀어오르기 시작했다. 광고....광고를 달아보자...! 잠깐 검색을 해보니 너무나 무시무시한 글들이 주루룩 떴다. 애드고시라고 불릴 정도로 구글 애드 센스 승인이 잘 나오지 않는다는 포스팅들이 꽤나 많았고, 게시글 하나에 최소 1000자 이상 작성해야 한다는 팁도 있었다. 그런 포스팅들을 보고 나서 내 블로그를 보니 본디 초라한 행색이 더더욱 그지같아 보이는 것이 아닌가... 그렇다고 해서 정성과 사랑을 듬뿍 넣은 포스팅을 단기간에 대량 제작할 체력과 시간은 없기에 일단 질러나보자 해서 바로 애드센스에 신청서를 날려봤다. 승인까지 소요기간도 3일에서 일주일까지 언급되길..
-
비정규직 신분으로 쓰는 짤막한 회고일기 2019. 4. 18. 21:12
일기 카테고리를 만들어둔 것이 무색하여 오랜만에 한번 써본다. 경력을 리셋하고 개발을 시작한지 벌써 3년차에 접어들었다. 첫 회사를 퇴사하면서 '그래....눈 딱 감고 한 3년 정도만 고생한다고 생각하자...' 라는 각오로 개발 공부를 시작했는데 정말 3년을 고생하게 될 줄은 몰랐다. 말이 씨가 된걸까? 이럴 줄 알았다면 말이라도 '한 6개월만 고생하면 될거야^^!!' 라고 할걸 그랬다. 3년전까지만 해도 개발하면 전혀 다른 우주의 이야기 같았고, 프리랜서는 남의 인생에만 있는 포지션인줄 알았다. 물론 지금도 개발자라고 소개하기 민망할 정도로 초보 티를 풀풀 내고 있긴 하지만 천상 이과와는 거리가 멀다고 스스로 인정하면서 30년을 살아왔던 내가 지금은 프리랜서 개발자로 먹고 살고 있는 걸 보면 정말 인생..
-
ajax로 파일(multipart/form-data) 전송하기개발/Javascript & jQuery 2019. 4. 17. 22:51
AS-IS 소스에서는 사용자가 선택한 파일을 업로드하는 소스를 1 2 3 4 Save Colored by Color Scripter cs 이런 식으로 구현했으나 TO-BE로 전환하면서는 파일 업로드 후 자바스크립트 단에서 콜백함수를 호출하도록 만들고 싶어서 방식을 조금 바꿔봤다. 1 2 3 4 Save Colored by Color Scripter cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 $(function(){ $('#uploadBtn').on('click', function(){ uploadFile(); }); }); function uploadFile(){ var form = $('#uploadForm')[0]; var form..
-
[Mac OS] react.js 앱 초기화 시 error Command failed with exit code 1. 해결개발/문제 해결 2019. 3. 26. 16:04
난생 처음으로 맥OS를 써보는지라 진짜 엉망진창 와장창으로 소중한 맥북을 혹사시키고 있다.오늘은 react.js 기반으로 웹 어플리케이션을 하나 만들어보려고 설치했다. 신나게 설치 후 npm start 명령어를 날리자 라고 error Command failed with exit code 1 가 뜬다. ㅠㅠ조짐이 좋지 않지만 친절하게도 어떻게 해결해야할지 터미널에 찍어주므로 하나씩 따라해봤다. 첫번째 시도 : rm -rf yarn.lock / rm -rf package-lock.json -> 실패두번째 시도 : yarn upgrade -> 실패세번째 시도 : yarn install -> yarn 설치는 성공했으나 react 앱 초기화 실패네번째 시도 : rm -rf node_modules -> 성공!!!!..
-
3. 삽입정렬전공 공부/알고리즘 2019. 3. 12. 16:11
이제는 안 보면 섭섭한 동영상부터 삽입정렬 알고리즘은 배열의 앞에서부터 차례대로 비교하면서 적절한 위치를 찾아 삽입하면서 데이터를 정렬한다.배열이 길어질수록 효율성은 떨어지지만 구현이 간단하고시간 복잡도는 O(n^2) 이지만 선택정렬이나 버블정렬보다 빠르다. 영상에서 일어나는 일을 그림으로 풀면 삽입정렬의 특징은 반복문을 j번 실행했을 시 배열의 앞에서부터 j+1 항목까지 정렬된다는 점이다. 무슨 말이냐면 for 문을 2번 실행하고 나면 배열의 세번째 항목까지는 정렬된 상태라는 것 이 점을 이용해서 실제 코드로 구현할 때에는 j번째 원소와 j+1번째 원소의 크기를 비교하였을 때 j번째 원소가 더 클 경우① 두 원소의 위치를 교환하고 ② 인덱스 값을 하나 줄여서③ j번째 원소와 j-1번째 원소의 크기를 비..
-
동적으로 추가된 셀렉트박스에서 원하는 옵션 선택하기개발/Javascript & jQuery 2019. 3. 6. 11:13
동적으로 셀렉트 박스에 옵션을 생성하여 추가해준 후,특정 이벤트 발생에 따라 원하는 옵션을 선택해줘야 할 때가 아주 많이 발생한다... 그럴 때는 당황하지 말고 이렇게 12345//옵션 순서를 알 경우 : 선택하고자 하는 옵션 순번을 명시하여 선택$("#selectBox option:eq(n)").prop("selected", true); //해당 옵션의 value를 알 경우 : 선택하고자 하는 value를 명시하여 선택$("#selectBox").val("값").prop("selected", true);cs 해주면 된다. 처음에는 attr()을 써서 시도해보았으나 안되길래 찾아봤더니 동적으로 추가된 요소에 대해서는 attr() 이 안 먹는 모양
-
[MySQL] MySQL에서 ROW_NUMBER 사용하기개발/Database 2019. 2. 19. 17:43
오라클, 티베로..등에서 쿼리를 짤 때 툭하면 ROW_NUMBER() OVER 를 줘서 뽑다가 MySQL로 오니 당연히 신택스 에러가 떨어진다. MySQL에서는 특이하게도 SELECT 절에서 function 을 활용한다거나 이런 방식이 아니라변수를 선언하고 이 변수에 1씩 더해서 뽑아내는 방식으로 Row num을 줄 수 있다. 알고보니 MySQL에서는 쿼리에서도 변수를 선언해서 사용할 수 있고이걸 응용해서 뽑아내는 것 같다. 일단 쿼리를 보자면 요렇게 123456789101112SELECT @ROWNUM := @ROWNUM + 1 AS ROWNUM ,TB.* FROM ( SELECT NOTE_NO ,NOTE_TITLE ,NOTE_CONTENTS FROM EXAMPLE.NOTE ORDER BY NOTE_N..
-
2. 선택정렬전공 공부/알고리즘 2019. 2. 19. 17:27
이번 시간에도 신나는 동영상부터 출처 : https://ko.wikipedia.org/wiki/%EC%84%A0%ED%83%9D_%EC%A0%95%EB%A0%AC 선택정렬의 핵심은 (나혼자 이해하기로) 최소값을 '선택'해서 다른 값들과 비교하고, 현재 선택한 최소값이 비교값보다 크다면 그 비교값을 다시 최소값으로 선택하는 것 영상에서 일어나는 일을 좀 더 소스 친화적으로 풀어보자면 [첫번째 루프] [두번째 루프] [세번째 루프]이런 식으로 진행이 된다. 이걸 자바 소스로 풀어내면 123456789101112131415161718192021222324252627282930public class SelectionSort { public SelectionSort(){} public String sort(int..