タダケンのEnjoy Tech

楽しみながらラクに成果を上げる仕組みを考える

TECH::CAMPの無料体験会に参加してきた

WEBサービスを作るにあたって、プログラミングだったり、サーバー構築だったり、いろいろと学ぶことがたくさん。今までは、基本的に独学だったんだけど、効率よく学習をすすめたいなと思って、ネットを漁っていたら、TECH::CAMPという、プログラミング学習サービスを見つけた。無料の体験会があったので、参加してみた。

TECH::CAMPの概要

TECH::CAMPの特徴として

  • オンラインのカリキュラムがある
  • カリキュラムはTwitterのようなWEBサービスをつくったり、iPhoneアプリを作ったりなど、幾つかのコースがある
  • オンラインだけでなく、実際の教室にいってそこでなんでも質問できる
  • 期間は一週間、一ヶ月、二ヶ月と選べる
  • 受講後一年間は、技術的なアドバイスを受けることが可能

無料体験会の内容

基本的には、WEB上のカリキュラムにそって、学習を進めながら、コーディングをしていく。実際にエディタにコードを入力していきながら、ターミナルで実行していく感じ。コンテンツがすごい洗練されているのか、内容は非常に分かりやすかった。

わからないところが簡単に聞けるっていうのがすごい安心感ある。そして、こちらがお客さんなので、非常に丁寧に教えてくれる。あと、基本褒める。

実際の体験会では、簡単なじゃんけんゲームをつくるところで終了。

janken.rb

puts "数字を入力したら、じゃんけんゲームが始まります"
puts "[0]:グー\n[1]:チョキ\n[2]:パー"
user_hand = gets.to_i
cpu_hand = rand(3)

#相手の手を表示させる
if cpu_hand == 0
    puts 'CPUの手は:グー'
elsif cpu_hand == 1
    puts 'CPUの手は:チョキ'
elsif cpu_hand == 2
    puts 'CPUの手は:パー'
end

#結果を表示
if cpu_hand == user_hand
    puts 'あいこ'
elsif (cpu_hand == 0) && (user_hand == 2)\
      ||((cpu_hand == 1) && (user_hand == 0))\
      ||((cpu_hand == 2) && (user_hand == 1))
    puts '勝ち'
else
    puts '負け'
end

参加してみて

体験してみて、思ったのが、プログラミングに集中できる環境が手に入るのが非常に大きい。来ている人は、みんな、高いお金を出しているだけあって、集中して、プログラムを書いたり、勉強したりしている。あと、詰まった時にすぐに聞ける人がいるってのは時間短縮につながって良さそう。時間があれば、オリジナルのWEBサービスを作ってもみてもらえるみたいやし。申し込みしてみても良さそうな印象。

Twitterからキーワード検索して画像を取得する

タイトルの通り、Twitterの検索APIを利用して、特定のキーワードの画像をダウンロードするためのスクリプトになります。

https://github.com/Code-Hex/twippai 参考にしたのはここ。

実行環境 OS:OX X EI Capitan(10.11.5) Python:2.7.10

標準ライブラリの他に、こららのインストールする必要があります。

  • requests
  • requests_oauthlib
#!/usr/bin/env/python
# coding: utf-8

import os
import json
import time
import requests
from hashlib import md5
from requests_oauthlib import OAuth1

def md5hex(str):
    a = md5()
    a.update(str)
    return a.hexdigest()
    
folder = './data'

#パスが存在していればTrueを返す
path = os.path.exists(folder)

if not path:
    os.mkdir(folder)

consumer_key = ''#your key
consumer_secret = ''#your key
access_token = ''#your key
access_token_secret = ''#your key

#Twitter APIについて以下参照
#https://syncer.jp/twitter-api-matome/get/search/tweets
url = 'https://api.twitter.com/1.1/search/tweets.json'
oauth = OAuth1(consumer_key,consumer_secret,
                access_token,access_token_secret)
                #署名メソッドの指定。なくても動いた
                #signaturemethod = 'HMAC-SHA1')
                
idnum = ''
count = 1
while count <= 10:
    #Twitterの検索演算子も使える
        query_form = {'q' : u'メタモン filter:images min_retweets:1',
                                        'lang' : 'ja',
                                        'count' : 100,
                                        'result_type' : 'recent',
                                        'max_id' : idnum}
        uri = requests.get(url, auth = oauth, params = query_form)
        json_loads = json.loads(uri.content)
        
        
        for data in json_loads['statuses']:
            if 'media' not in data['entities']:
                continue
            else:
                urls = data['entities']['media']
                media_urls = urls[0]['media_url']#画像のURLを取得
                downloads = requests.get(media_urls).content #画像のDL
                print media_urls + " " + str([count])
            #%sは文字列として置換
            
            #URLを16進数形式の文字列に返して、ファイル名としている?
            filename = '%s.jpg' % md5hex(urls[0]['media_url'])
            filepath = '%s/%s' % (folder, filename)
            
            images = open(filepath, 'wb')
            images.write(downloads)
            images.close()
            count += 1
        idum = data['id']
        time.sleep(1)

JavasriptでMacを制御

YosemiteからJavascriptで、macを制御できるようになったそうな。
以前からApplescriptの延長だと。

試しにTwitterのIDを取得してみた。

var Tw = Application("Twitter");
Tw.includeStandardAdditions = true
Tw.activate()
var Acc = Tw.accounts[0];
var Uname = Acc.username();

Tw.displayDialog(Uname)


参考にしたのはこの辺。

営業さんがSQL100本ノックでぐいぐい分析回すはなし

これ読んで、すごい面白かったので忘れないようメモ。情報公開の文化を作るっていうのは、今自分の関わっている仕事とも近しいことなので、凄い参考になった。データベースを公開するっていう話では、全然ないけど。てかフルオープンってすごいな。紹介されてたSQL100本ノックっていうのはちょっとやってみたい。同じタイミングで言語処理100本ノックもホットエントリしてた。

SQL Fiddle←SQLをWEB上で練習用

言語処理100本ノック 2015

 

どうでもいいけど、’営業さんま’にはちょっと吹いた。

 

Progateというプログラミング学習サイトがすごいいい感じ

最近、プログラミング学習サイトの「Progate」で、HTML、PHP、jQueryの勉強を
始めました。「Progate」の学習の流れは、①スライドで学習、②実際にコードを書く
③合ってるか確認するという三工程です。

Progeteがよいなとおもったところは以下の通りです。

  • ブラウザだけで、プログラミングの勉強ができる(環境構築しなくてよい)
  • ちゃんと動くサイトをつくれる(気になれる)
  • スライドをみる→自分で手を動かすの流れで頭に入りやすい

今のところ、HTMLとPHPは終わり、jQueryを途中までやりました。サクサク進んでおもしろい。今後はRubyも追加されるそうです。

 


Progate | Learn to Code, Learn to be Creative.

----

プログラミングの学習サイトはほかにも以下のサイトがあるみたいです。Progateが終わったらやってみたいな。

CODEPREP -オンラインでプログラミングを学ぼう-

コードの書き方を学ぼう | Codecademy