전체 글 802

소셜 딜레마를 보고

SNS의 민낯을 보여주는 다큐멘터리 생각했던 것보다 SNS가 우리 삶과 세계에 아주 아주 큰 영향을 미치고 있음을 알게 되었다.(무서울 정도로..) 전부터 내 생각과 사고는 내 오리지널이 아닌 여러 프레임들이 덧씌워진 결과라는 생각을 하곤 했는데, 오늘날 그러한 프레임 중에 가장 큰 프레임은 단연 SNS일 것이다. 생각해보면 요즘 어린아이들은 정말 스마트폰 없이는 살 수 없는 듯이 SNS에 집착하는 경향이 있다. 유행하는 것은 따라 하고 그 집단에 소속되기 위해 지나치리 만치 헌신하고, 또 내집단을 형성하여 따돌리고 갈등을 조장하기도 한다. 여기서 눈치껏 어울리지 못하면 '이상한 애' 낙인이 찍혀 친구들로부터 외면당하기 일쑤이다. 이건 SNS로 인해 생겨나는 폐해 중 일부일 뿐이다. 그리고 이러한 사고방..

점프 투 파이썬 #01장 파이썬이란 무엇인가?

오늘 배운 것 - 구글에서 만든 소프트웨어의 50%이상이 파이썬으로 작성되었다. + 인스타그램, 드롭박스 - 공동 작업과 유지 보수가 매우 쉽고 편하다. - 다른 언어로 작성된 많은 프로그램과 모듈이 파이썬으로 재구성되고 있다. - 파이썬은 대부분의 프로그램을 만들 수 있으며 만들 수 없는 프로그램과 빠른 실행이 필요한 부분은 다른 언어로 만든 프로그램을 파이썬 프로그램 안에 포함시켜 보완할 수 있다. - 펄이 100가지 방법으로 하나의 일을 처리할 수 있다면, 파이썬은 가장 좋은 방법 1가지만 사용한다. - 파이썬은 괄호사용이 적으며 대신 들여쓰기를 정확히 해야 코드가 실행된다. - 파이썬은 개발 속도가 빠르다. 파이썬으로 할 수 없는 일 - 시스템과 밀접한 프로그래밍 영역 - 모바일 프로그래밍 - 파..

생활코딩 #MySQL 클라이언트 Workbench, 수업을 마치며

오늘 배운 것 명령어 기반(MySQL Moniter) GUI 기반(MySQL Workbench) 보통 명령어 기반 서버를 사용한다. 그 이유는 GUI에 들어가는 리소스를 아끼기 위해서이다. 서로 장단점이 있다. 맥락에 따라 사용할 것. MySQL Workbench 설치링크 : https://dev.mysql.com/downloads/workbench/ 서버가 있고 클라이언트가 별도로 있다. 서버를 중심으로 정말 많은 클라이언트가 있다. 서버를 사용하는 모든 앱, 웹, 데이터 분석 시스템들은 본질적으로 모두가 '클라이언트' 이다. 이 세상에는 어마어마하게 많은 MySQL 클라이언트가 있다. 자신에게 잘 맞는 클라이언트를 만나자! 수업을 마치며 다음 공부거리 SQL(관계형DB) > CRUD > READ > ..

생활코딩 #테이블 분리하기, JOIN

오늘 배운 것 테이블 분리하기 앞선 글에 적은 것처럼 테이블 분리는 데이터를 좀 더 효율적으로 관리하기 위함. 아래는 실습 코드 MariaDB [(none)]> use daco; Database changed MariaDB [daco]> SHOW TABLES; +----------------+ | Tables_in_daco | +----------------+ | topic | +----------------+ 1 row in set (0.008 sec) MariaDB [daco]> RENAME TABLE topic TO topic_backup; Query OK, 0 rows affected (0.041 sec) # 테이블 이름 변경 방법 -> 리네임 테이블 (이름) 투 (새이름); MariaDB [da..

생활코딩 #관계형 데이터베이스의 중요성

오늘 배운 것 기술을 배우면 본질과 혁신이 무엇인지 나눠서 파악해보자 본질 : 데이터베이스 = CRUD = 본질은 공통점이다 혁신 : 관계형 = 다른 혁신들과 차이점은? 관계형 데이터베이스의 필요성 데이터가 중복된다면 무언가 개선할 것 이 있다는 증거다 1억개의 데이터 중에 1천만개가 중복된다면? -> 용량이 큰 데이터가 중복된다면 경제적 손해 -> 수정이 필요하다면 많은 리소스가 필요 -> 데이터 추출이 명확하지 않을 수 있음 (ex. 동명이인) 등등 오늘 느낀 것 본질 CRUD를 잊지 말 것. 이제 본격적으로 기술을 배우기 시작한다. 테이블 분리, 조인, 이것들은 결국 데이터를 효율적이고 혁신적으로 관리하기 위함일 터, 이것은 저비용 고효율을 의미하겠지. 머리를 어떻게 굴리냐에 따라 데이터관리는 천지..

생활코딩 #SQL의 DELETE 구문(DELETE)

오늘 배운 것 SQL의 DELETE 구문 먼저 기본 문법은 아래와 같다. 싱글과 멀티로 나눠진다. #Single-Table Syntax DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name [[AS] tbl_alias] [PARTITION (partition_name [, partition_name] ...)] [WHERE where_condition] [ORDER BY ...] [LIMIT row_count] #Multiple-Table Syntax DELETE [LOW_PRIORITY] [QUICK] [IGNORE] tbl_name[.*] [, tbl_name[.*]] ... FROM table_references [WHERE where_condition] D..

생활코딩 #SQL의 UPDATE 구문(UPDATE)

오늘 배운 것 SQL의 UPDATE 구문 우선 UPDATE 문법부터 보고 가자. 싱글 테이블과 멀티 테이블 2가지로 나뉘는 것으로 보인다. 공식문서 링크 #Single-table syntax: UPDATE [LOW_PRIORITY] [IGNORE] table_reference SET assignment_list [WHERE where_condition] [ORDER BY ...] [LIMIT row_count] value: {expr | DEFAULT} assignment: col_name = value assignment_list: assignment [, assignment] ... #Multiple-table syntax: UPDATE [LOW_PRIORITY] [IGNORE] table_refer..

생활코딩 #SQL의 SELECT 구문(READ)

오늘 배운 것 SQL의 SELECT 구문 -> READ ! # 13.2.10 SELECT Statement (SELECT SYNTAX) # [] 대괄호는 생략 가능하다 SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr [, select_expr] ... [into_option] [FROM table_references [PARTITION partition_list]] [WHERE where_condition] [GROUP BY {col_name..

생활코딩 #SQL의 INSERT 구문(CREATE)

오늘 배운 것 SQL의 INSERT 구문 -> CREATE # 테이블 안에 데이터 넣기 >>> INSERT INTO 테이블이름 (컬럼제목,컬럼제목,컬럼제목) VALUES(넣을값,넣을값,넣을값); # 데이터 확인하기 >>> SELECT * FROM 테이블이름 # 테이블 안에 데이터 넣기 [ INSERT INTO 테이블이름 (컬럼제목,컬럼제목,컬럼제목) VALUES(넣을값,넣을값,넣을값); ] ! MariaDB [(none)]> use daco Database changed MariaDB [daco]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | daco | | information_schema | | mysql |..

생활코딩 #MySQL 테이블의 생성, CRUD

오늘 배운 것 MySQL 테이블의 생성 테이블을 생성할 때 열의 데이터타입을 강제할 수 있다! (잘못된 정보가 컬럼에 기재되지 못하도록) ex. int, bigint NOT NULL : 값이 없는 것을 허용하지 않겠다라는 의미 NULL : 값이 없어도 혀용한다는 의미 AUTO_INCREAMENT : 행이 추가될 때마다 자동으로 1을 추가하라는 의미 VARCHAR : 베리어블과 캐릭터를 합친 약자 > PRIMARY KEY : 성능 / 중복 두가지 측면에서 쓰이는 식별자, 기본 키로 사용한다는 의미 MariaDB [(none)]> MariaDB [(none)]> use daco Database changed MariaDB [daco]> create table topic( -> id int(11) not nu..