2017.09 TIL

프로그래밍/기타 2017. 10. 8. 14:34

2017.09.03
개발블로그 모음 : https://github.com/sarojaba/awesome-devblog

2017.09.09
코딩 면접 준비 다이어그램

2017.09.10
영어학원 활용법

금융(카카오뱅크) 오픈소스 DBA 30일 생존기

2017.09.17
Google I/O 2017 참관기 - Kotlin
Google I/O 2017 참관기 - 머신 러닝과 AI
누구나 쉽게 할 수 있는 빅데이타와 머신러닝 아틀라시안에서 slack에 경쟁서비스를 오픈하였다. stride

2017.09.22

네이버에서 만든 오픈소스 가이드

패스트캠퍼스 딥러닝 강의 자료

Posted by 빨강토끼
,

2017.08 TIL

프로그래밍/기타 2017. 10. 8. 14:33

2017.08.24
winform vs WPF (WPF가 더 좋다는...)
http://demozip.tistory.com/entry/WinForm%EA%B3%BC-WPF%EC%9D%98-%EC%B0%A8%EC%9D%B4http://alleysark.tistory.com/91 http://hackersstudy.tistory.com/64 http://hoonsbara.tistory.com/83http://celdee.tistory.com/215 http://jooji815.tistory.com/35

not exists remind
http://blog.uphs.co.kr/72

참고 : http://naudhizb.tistory.com/804

파이썬 스케줄러
https://apscheduler.readthedocs.io/en/latest/index.html http://tomining.tistory.com/138

2017.08.25
http://click.pocoo.org : 파이썬 터미널 앱에서 사용할 수 있는 CLI 프래임워크 argparse 는 표준 라이브러리라고 하나 안좋다고 함.

http://urwid.org/ : Console user interface library for Python curses 는 표준 라이브러리라고 하나 안좋다고 함.

python 파일을 exe파일로 변환하기
http://blog.naver.com/PostView.nhn?blogId=neroororo&logNo=30183775300https://stackoverflow.com/questions/41570359/best-method-of-converting-py-to-exe-for-python-3-6http://infocentre.tistory.com/3 http://sh1n2.tistory.com/entry/Python3-%EC%9C%88%EB%8F%84%EC%9A%B0-%EC%8B%A4%ED%96%89%ED%8C%8C%EC%9D%BC-%EB%A7%8C%EB%93%A4%EA%B8%B0 http://tkqlzz.tk/9

http://hashcode.co.kr/questions/336/%EC%99%B8%EB%B6%80-%EB%AA%85%EB%A0%B9%EC%96%B4%EB%A5%BC-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9C%BC%EB%A1%9C-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0

2017.08.28
문자열 병합(concatenation)을 위해서는 + 연산자를 사용하지 말고, StringBuilder나 String.Format()을 사용한다.

2017.08.29
mssql 의 SP에서 임시테이블을 declare 하여 사용할 수 있다는 걸 알았다.
http://sonim1.tistory.com/166 http://lab.cliel.com/entry/SQL-%EC%9E%84%EC%8B%9C-Table%EA%B3%BC-%EB%B3%80%EC%88%98-Table http://firewind.tistory.com/entry/DB-MS-SQL-Procedure%EC%97%90%EC%84%9C-Table%EA%B5%AC%EC%A1%B0%EB%A5%BC-%EC%A0%80%EC%9E%A5%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

2017.08.30
조인방식 3가지. 기억이 새롭다.
http://sonim1.tistory.com/108

블록체인을 가장 쉽게 설명한 글이라고 한다. http://www.msip.go.kr/webzine/posts.do?postIdx=261

Posted by 빨강토끼
,

예전에는 필요한것이 있으면

http://www.sunfreeware.com 에서 다운로드 할수있었지만

언제부터인가 http://unixpackages.com 으로 유도하고 있더군요.


그런데 문제는 그사이트가 유료화되고 있다는 것입니다.


구글링을 하다보니 다행이 괜찮을 곳을 찾을수 있었습니다.


http://ftp.riken.jp/Sun/sunfreeware/sparc/


물론 다운받을수있는 버젼이 극히 제한적이다....



Posted by 빨강토끼
,

기사와 다른쪽으로 이야기가 흘러간 글입니다.

NoSQL 이나 NewSQL 관련 정보를 얻고 싶으시면 구글의 다른 검색 결과를 조회 하세요.


"새로운 SQL이 뜬다" SQL과 NoSQL의 장점 결합한 NewSQL

http://www.itworld.co.kr/news/71459

나는 나름 매출이 큰 서비스의 PG(payment gateway) 시스템을 개발하고 있다.
하지만 시스템에는 ESB 나 EAI 심지어는 MQ 도 사용하지 않고 있다.
그중 메인엔진은 스프링도 사용하지않고 pure JAVA 로 되어 있다.

이유는 간단하다. 검증이 안되서이다.
확장성도 좋고 유지보수도 더쉬어지고 심지어는 성능도 더 좋아진다고 하는데
쓰지 않는다.

웹이나 앱쪽은 참 빠르게 변화되는데 말이다.
다른 서비스는 빠르게 요구사항이 변화되고, 
검증되지 않은 문제점이 발견되더라도 대처가 유연하고
이러한 이유로 잠시 서비스를 중지 한다고 해서 큰사고로 이어지지 않는다.

하지만 코어개발쪽은 365일 24시간 무정지서비스가 원칙이다.
최초에 C 나 C++ 이 아니라 JAVA로 개발한다고 해서 이슈가 되었을 정도로
코어개발쪽(돈을 처리하거나 민감한 서비스는)은 최신 기술도입에 참느리다.

NoSql도 마찮가지다. 
빅데이터가 수많은 정보를 모아놓고 그중에 보물을 찾는 과정이라면
주어진 역활을 정확히 처리해야되는 상황에서는 오히려 그런 보물을 찾는 과정을 사치(?)로까지 생각하는 경향이 있다.

스터디 활동을 하며 이런저런 기술에 대하여 듣고 도전해보는 분들을 보며,
급격하게 변하는 세상속에서 나만 혼자 가만히 있는 것 같아서 두려움을 느낄 때가 많았다.

인터넷이나 책을 보면서 이것저것 공부를 해봐도,
가장 그 기술에 대하여  학습할 수 있는 가장 확실한 방법은
실무에 사용하는 것 만한 것이 없다. 

스프링을 반년동안 공부를 했지만 
실무에 적용하질 않으니 1년이 지난후에 기억나는 것은 별로 없다.

마치 영어를 공부하는 것과 같았다

핑계라면 핑계일까? 아니 나름 깨닳은 것이 있다면
항상 신기술에 흐름을 주목해야 하지만 무작정 신기술을 쫓아다니면 안되겠다는 것이다.
어쩜 그 기술을 실무에 써보기도 전에 다른 기술로 트랜드가 넘어가는 경우가 생길수도 있고,
어쩌면 평생 그분야의 일을 실무로 경험해보지 못할수도 있다.

마치 네트워크 프로그래밍쪽 일을 하거나 진로를 정한 개발자가
node.js 나 CSS 쪽에 관심을 갖는것처럼 ...
하지만 보안쪽일을 하게되면 그쪽의 지식이나 경험이 필요할 때가 분명 있긴하다.
그러나 아직 네크워크 프로그래밍이나 개발자체에 경험이나 실력이 부족하다면 
자기 분야에 좀 더 공부시간을 투자하는것이 더 도움이 될것같다.
대용량 DB 튜닝이나 OS쪽에 관심을 가지는 식으로 말이다.

모두들 javascript 나 빅데이터에 관심이 쏠려있다고 해서 이끌려 다닐 필요가 없는 듯 하다.

물론 그분야에 일을 하거나 관심이 있는 사람들에게는 그런 이슈들이 상당히 중요한 문제들이고 
꼭 필요한 과정이다.

나역시 매일 마음을 가다듬지만 매일같이 쏟아나오는 신기술에 대한 기사나 
튜토이얼 메뉴얼을 힐끔힐끔 검색하며 보고있는 내자신을 발견하게 된다....


Posted by 빨강토끼
,

sublime text 을 사용하고 있습니다.

그런데 txt 문서들을 열고 이런저런 작업을 하고 새로편집창을 열어 이런저런 작업을 한후에

sublime text 를 닫으면 수정하거나 새로만든 화일들의 저장여부를 묻지도 않고 닫혀버립니다.

이기능을 sublime text 에서는 hot_exit 라고 하는데 저는 아직 익숙하지가 않아서

sublime text 를 닫을때 그런화일들의 저장여부를 확인했으면해서 인터넷을 찾아봤습니다.


Preferences.sublime-settings 에서

"hot_exit": false,

이라고 입력하고 저장하면 제가 바라는 기능이 동작됩니다.



Posted by 빨강토끼
,

갑자기 잘되던 Command Palette 단축키 (Ctrl+Shift+P) 가 안먹는 현상이 생겼습니다.

구글링을 해도 답이 안나왔습니다.


결국 설정화일을 뒤져보니

C:\Program Files\Sublime Text 3\Packages\Default.sublime-package

라는 경로의 파일에


정상인 구문

{ "keys": ["ctrl+shift+p"], "command": "show_overlay", "args": {"overlay": "command_palette"} },

과 그리고

{ "keys": ["ctrl+shift+p"], "command": "show_scope_name" },

라는 문구가 있었습니다.


아마 처음뒤에 나오는 구문때문에 앞으 command_palette 이 호출되지 않고 있는것 같아서

뒤의 구문을 주석처리하였더니 정상적으로 Command Palette 단축키 (Ctrl+Shift+P) 가 먹힙니다.

Posted by 빨강토끼
,

notepad++ 에서 Zen Coding 을 해보려고 Zen Coding - Python 이라는 플러그인을 설치하면

 Python Script 라는 플러그인이 같이 설치됩니다.


여하튼 실컨 참고하는 사이트데로 코딩을 한후에 Ctrl + Alt + Enter 를 해도 아무런 동작을 하지 않습니다.


그리고 혹시 몰라  플러그인 -> Python Script  -> Show Console 을 해보니 


Traceback (most recent call last):
  File "C:\Program Files\Notepad++\plugins\PythonScript\scripts\startup.py", line 26, in <module>
    import site
  File "C:\Python27\Lib\site.py", line 563, in <module>
    main()
  File "C:\Python27\Lib\site.py", line 545, in main
    known_paths = addusersitepackages(known_paths)
  File "C:\Python27\Lib\site.py", line 278, in addusersitepackages
    user_site = getusersitepackages()
  File "C:\Python27\Lib\site.py", line 253, in getusersitepackages
    user_base = getuserbase() # this will also set USER_BASE
  File "C:\Python27\Lib\site.py", line 243, in getuserbase
    USER_BASE = get_config_var('userbase')
  File "C:\Python27\Lib\sysconfig.py", line 472, in get_config_var
    return get_config_vars().get(name)
  File "C:\Python27\Lib\sysconfig.py", line 405, in get_config_vars
    import re
  File "C:\Python27\Lib\re.py", line 105, in <module>
    import sre_compile
  File "C:\Python27\Lib\sre_compile.py", line 14, in <module>
    import sre_parse
  File "C:\Python27\Lib\sre_parse.py", line 17, in <module>
    from sre_constants import *
  File "C:\Python27\Lib\sre_constants.py", line 18, in <module>
    from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT


이런 메시지가 출력되어있었습니다.


열심히 구글링을 한후에 알아낸 결과는


C:\Program Files\Notepad++\plugins\PythonScript\scripts\startup.py 을 열어서

# This imports the "normal" functions, including "help"

## 아래부분 삽입

sys.path = [n for n in sys.path if not n.startswith('C:\\Python27')]

## 윗부분 삽입
import site


하고 난후 다시 시작해보니 정상동작됩니다.


이유는...일본어라서....2.7.4 이후부터 REPEAT import 경로가 바뀌었다고 하네요...

Posted by 빨강토끼
,

어느날 갑자기 네이버(혹은 다음이나 검색사이트)를 통하여 여러분의 블로그나 사이트에 접속할때

정상적으로 여러분의 사이트가 보여지지 않고 이상한 성인사이트나 카지노 사이트로 접속될때가 있을겁니다.


정말 난감하죠.


전에 http://blog.cjred.net/204 를 통하여서 티스토리 해킹에 대한것을 간략하게 글을 올린적이 있었는데

최근에 지인분께서 자신의 홈페이지도 같은 경우를 처해있다고 해서 호스팅을 이용하시는 버전으로 해서

정리를 해보겠습니다.


일단 한시라도 빨리 여러분의 계정 비밀번호를 바꾸는 것이 우선입니다.


그리고 난후 여러분의 첫화면화일(index.php 등)이나 공통으로 로딩하여 사용하고 있는

js 나 인터넷 화일을 검토해봅니다.

혹시 어떤것인지 모른다면 여러분이 사용하고 있는 FTP 프로그램으로 보면 문제가 발생될때쯤

수정된 파일을 발견할수 있을겁니다.


해당 화일을 메모장등 편집기 프로그램으로 보면 아래와 같은 자바스크립트 문구를 발견할 수 있을겁니다.

여러분이 삽입한 코딩이 아니라는 것을 바로 확인 하실수 있을겁니다.

바로 납치 태그라는 것입니다.


간단하게 구문을 설명해 드리자면 

document.referrer 구문은 바로 전에 접근했던 url 정보를 반환하는 것인데

그곳이 만일 naver 나 daum 이면 

window.location.href = "xxxx.com" 으로 지정한 url 로 이동하라는 

코딩구문입니다.


해당 부분은 삭제하시면 문제를 해결하실수 있습니다.


만일 여러분의 문제가 되는 곳이 티스토리 블로그라면 

좀 더 추가적으로 해줘야되는 것이 있는데

http://blog.cjred.net/204

위 주소에 정리를 하였습니다.


다른 이글루스나 텀블러 등 다른 곳이라면 제가 이용해보질 않아서 잘모르겠습니다.^^

아래 티스토리 설명을 유추해보시면 금방 고치실수 있을겁니다.


고맙습니다.

Posted by 빨강토끼
,

GrapViz 는 정말 훌륭한 프로그램이지만

기본적으로 제공하는 편집기(GVEDIT) 는 정말 볼품이 없습니다.


AcroEdit 를 사용하는 방법도 있지만 저는 개인적으로 

NotePad++ 를 사용하기 때문에 사용법을 정리해 봅니다.


우선

PlugIn 하나를 다운받아야됩니다.


NotePad++ 를 실행한후에

Plugins -> Plugin Manager -> Show Plugin Manager

로 들어간후에


NppExec 라는 PlugIn을 설치합니다.


설치가 끝나면 재실행을 하게됩니다.


재실행후에 


NppExec를 아래와 같이 환경설정합니다.(F6)


Command 란에 


dot "$(FULL_CURRENT_PATH)" -Tpdf -o "$(CURRENT_DIRECTORY)\$(NAME_PART).pdf"


라고 기입하고 Save 버튼을 클릭합니다.

Script Name 을 아루거나 (예를 들어 dot) 기입한후 save 버튼을 클릭합니다


DOT 스크립트 파일을 notepad++ 창에서 여러분이 원하는 데로 편집한후 

Ctrl + F6 을 누르면 DOT 스크립트파일이 있는 위치에 PDF 파일이 생성된것을 확인할수 있습니다.


만일 PNG 이미지 화일로 출력되길 원한다면 


dot "$(FULL_CURRENT_PATH)" -Tpng -o "$(CURRENT_DIRECTORY)\$(NAME_PART).png"


라고 해주면 됩니다.


고맙습니다.^^


참조

http://graphviz.org/

http://blog.cjred.net/223

http://steinweb.blogspot.kr/2013/05/using-notepad-to-render-graphviz-figures.html

Posted by 빨강토끼
,

less2css 컴파일러

http://wearekiss.com/simpless

prefixr.com연동

설치한 폴더를 옮기면 실행안됨.


http://winless.org/

prefixr 연동안됨

별로 않좋음


less 편집

http://crunchapp.net/

air도 같이 깔아줘야됨

에러검출기능도 있다고 하는데 테스트해보니 잘안됨


클로스-브라우저, css압축

http://prefixr.com/

Posted by 빨강토끼
,