「API」を含む日記 RSS

はてなキーワード: APIとは

2017-10-28

anond:20171027101309

タデプログラミングやってみた

実行環境は、Windows 10はてなAPIは知らない

1)URL規則性を見つける

増田場合

https://anond.hatelabo.jp/?mode=top&page=1

page=1、page=1001、・・・

2)各ページの日記規則性を見つけて、投稿時刻の取得方法検討する

増田で、先頭の日記場合

<div class="section">
<h3>
<a href="/20171010162108"> ← (雑だが)ここらへんを取ればよさそう
<span class="sanchor">■</span>
</a>
<a href="/20171010161641">anond:20171010161641</a>
</h3>
~~~
</div>

3)定数、関数の雛形、ループURLを生成・出力するだけのソースをとりあえず作成・実行

実行すると、↓が出力されるだけ

https://anond.hatelabo.jp/?mode=top&page=1

https://anond.hatelabo.jp/?mode=top&page=1001

https://anond.hatelabo.jp/?mode=top&page=2001

・・・

4)「ruby web 取得(スクレイピング)」あたりでネット検索、内容を理解せずにコピペする

4-1) 標準のopen-uriを使うと取得できるよ等見つかる

open-uriを実行すると、謎のエラー発生

C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:933:in `connect_nonblock': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)

4-2)エラーメッセージ検索、内容を理解せずにコピペする

OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

 

ここまでで、任意URLWebページ取得ができるようになる

5)Webページの内容を解析(パース)し、ページの先頭の日記のYYYY/MM/DD HH:MM:SSを取得

5-1)

HTMLはある程度構造化されているので、今回の場合だと、↓のようなとり方がいいと思う

「divタグ sectionセクション」直下の「最初のh3タグ直下の「最初のaタグhref

5-2)

思うけど、今回は、構造検索じゃなくて、単純に文字列検索だけで済ます

5-3)※

取得対象構造が変化する場合も多々あるが、構造が変化した場合でも、

構造的な取得方法を作っておけば、変化にもある程度対応やすい(パラメータの「1」を「2」にするとか)

文字列を解析的なやり方だと、取得対象の書式が変化した場合に、対処しにくいことが多い

ここらへんを、TODO:あとでやる、なんてするんだけど、もちろんあとでやらなくて不具合の温床になる

これ豆な

6)結果を出力

printコマンドプロンプトへ出力

 

例えばだが出力には、ファイルへ保存、メール送信クラウドへアップ、増田投稿 とかもある

 

ここまでで、page=1の処理ができた

7)繰り返しに注意

page=1ができればあとは繰り返すだけ

繰り返すだけなんだが、取得ごとに10秒待つことにする

あんまが~~ってやると、怒られるので

 

愚直なまでの単純な繰り返しは、PCプログラム) > 人の操作 の最たるものだと思う

 

はいえ、ほんとうに愚直で、

タイムアウトしたらどうなるのか?

・古いページは構造が異なるかもしれないのでは?

・最終ページはどこ?

・・・などなど。これらの忖度AIでも解決しにくい・・・と思う。

8)余談1 プログラム関係ネット検索すると、はてな結構ひっかかる

なにかうれしいセロry

9)余談2 スクレイピングってなんだよ

的な英単語IT用語解説よりも、英和辞典を引くとスって理解できることがある

scraping ・・・ こすること、削ること、削り落としたもの、かきくず

・・・

rubyソース

require 'open-uri'
require 'openssl'

# なんかエラーが出る暫定対処
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

BASE_URL = 'https://anond.hatelabo.jp/?mode=top&page='
PAGE_INCR = 1000

# 4) 指定URLのページを取得
def get_page(url)
    open(url).read
end

# 5) 年月日時分秒を取得
#012345678901234567890123456789012345678901234567890
#<div class="section"><h3><a href="/20171010162108">
def get_ymdhms(page)
    pos = page.index("<div class=\"section\"><h3><a href=")
    #p pos
    #p page[(pos+35)..(pos+35+13)] # YYYYMMDDHHMMSS 14
    aa = page[(pos+35)..(pos+35+13)]
    sprintf("%s/%s/%s %s:%s:%s", aa[0..3], aa[4..5], aa[6..7], aa[8..9], aa[10..11], aa[12..13])
end

# 6) 結果を出力
def print_dat(inc, ymdhms)
    puts sprintf("%06d, %s", inc, ymdhms)
end


# メイン
def main
    inc = 1
    for i in 1..10
        sleep 10 unless i == 1 # 7)初回以外は10秒待つ
        url = BASE_URL + inc.to_s
        page = get_page(url)   # 4)webページ取得
        ymdhms = get_ymdhms(page) # 5)投稿年月日取得
        print_dat(inc, ymdhms) # 6)結果出力
        inc += PAGE_INCR
    end
end

# 実行
main

 

ソース記法で書くと文字化けするので、スーパーpreで)

実行結果

ano_his.rb:67: warning: already initialized constant OpenSSL::SSL::VERIFY_PEER
000001, 2017/10/28 15:04:51
001001, 2017/10/10 17:08:08
002001, 2017/09/19 17:22:26
003001, 2017/08/24 10:23:53
004001, 2017/07/27 11:57:49
005001, 2017/06/27 17:42:17
006001, 2017/05/28 22:57:26
007001, 2017/04/28 10:26:18
008001, 2017/03/21 10:10:38
009001, 2017/02/10 15:01:32

anond:20171028062121

2012年1月 アフィ・ステマ騒動

2012年4月 大規模規制開始

2012年6月 ひろゆきによる転載禁止

2013年4月 大規模規制強化

2013年8月 個人情報大規模流出、大規模規制解除

2014年2月 2chサイト乗っ取り

2014年3月 Jimによる転載禁止

2015年3月 2ch専用ブラウザ向けAPI変更、非賛同ブラウザ締め出し

2017年10月 5ch.netドメイン移転

2013年以降は連動していると言われれば連動しているようにも感じるね。

2013年4月の大規模規制2014年3月から転載禁止嫌儲民大暴れと2015年3月2ch専ブラ締め出しが効いている風にも見える。

anond:20171028061705

2017-10-27

anond:20171026231325

これAPIかなんかでとってるんだとおもうけどこういうのさらっとできるようになりたい

ただはてなAPIたたくだけかもだけどどれをどんなふうにどんな環境で実行すれば情報とれるのかいまだにわからん

2017-10-21

anond:20171021194138

APIの整備とかもAIにやらしてみればどうなんだ

どういうのが使いやすいかなんて、だいたい政治的に決まるだろ

アホなやつほどAI仕事がなくなるとか言ってるけど、それはどこから給料が発生しているかわかってないからそう言ってるだけ

プログラマが思っているよりも、ほとんどの仕事給料の発生源は「政治的」なもの

AIなんざ、プログラマー間でのどういうAPIがいいか、どういうアルゴリズム実装するかの「政治的な」調整もできないんだから、無理だよ

 そういう仕事は、他の非IT業の人たちがやってる仕事と同じ程度に複雑で簡単から

Twitterとか、人間をつなぐようなソフトウェアばかり繁栄しているのみてもそれがわかる

anond:20171019174459

はい村はてブの作者の temtan です。

端的に言うとそれは村はてブには該当しません。元記事ではアカウントの選定を一定ルールに従って選定してフィルタリングしてはどうかという提案なのに対して、村はてブは村人の選定は人力手動でやってそのアカウントブクマした記事を集計したりフィルタリングしたりしていますフィルタリングはこれも人力手動で設定した URL を減点したり、特定サイトBuzzFeedとか)だったらタイトルサイト名を挿入したりとかです。

ついでに、せっかくなのではてなブックマーク村はてブについて色々語ってみようと思います

オワコンとか廃村なのか?とか言われていますが、村はてブ自分情報収集の中心になっています。と言っても、途中経過と選りすぐりだけですけど。自分にとってはとても良いです(自分用に作ったからねえ)村人リストとかブラックリストとかは更新してないけども、現状で問題を感じてないからであって、メンテナンス放棄した訳じゃないです。コードの方も特に利用に関して問題のあるバグが発覚してないので同様です。村人の追加とかは元々保守的性格なのと、村人を増やすと載せる載せないの閾値の設定もやり直さないといけなかったりとまあ要するに面倒だからですね。そこを楽になるように閾値設定も自動でやるようにするべきだったかもしれないかなと今更。

上述の通り村はてブは手動でアカウントを設定して集計してるだけでして表向きははてな村メタファーを使っていますが、言ってしまえば temtan お気に入りマイホットエントリーと大差ありません。だから村はてブに合う人は temtan と似てる感性を持ってるという話、逆に合わない人は temtan の感性と合わないってだけです。村人の選定はある程度公共性考慮して選定してありますが、所詮は一個人適当独断偏見で選んだだけです。

村人候補者機能について。これは村はてブで上がってきた記事を沢山ブクマしてる人をリストアップしてるだけです。当初の狙いとしては候補者、つまり村人リストに入れると良さそうな人を選定する機能として実装したのですが、上記の通りの既に村はてブに上がってきた記事ブクマしてる人を村人リストに入れると今までの傾向がより先鋭化する方向に向かう訳でして。自分としては今の村はてブには上がってこないが良い記事が上がってくるようになる人が良かったのに。つまり、当初の狙いと全く逆の機能になってしまったのですね。こりゃあかんははは。

はてなブックマークの将来に関してはだいぶ前にもう諦めた感じです。正直現状維持してくれればそれでいいやって感じ。村はてブを作った後のしばらくは色々やってて、スパムを色々調査してみたりブラックリスト更新を助ける自分アプリ作ってみたり。けど、肝心要のはてなブックマーク機能的に全く進化しない。新機能は入れないし、API だって増えない。今でもアカウント情報ブクマ数とかお気に入りお気に入りられとか)の API が無いっぽいし。表面的なリニューアルはするけどコードに手を入れるような事を全然しないのでもう諦めました。正直、技術者としてのプライドがあるならパーソナルブラックリストぐらい実装しろとは思うのですがね。これに関しては、自分の予想はそのコードに手を入れるだけの技術力を持った技術者が居ないんじゃないかと思っています。なので改良したくても出来ない状況なんじゃないかなとか。まあしたいと思ってるのかも疑問ですがね。最近だってリニューアルしたけど自分達で使ってない、ユーザを見てないの丸わかりで、結局は元に戻したりしたからね。

なので村はてブの新機能とかも(まあ元々プログラマとしては Web 系ではなく OS システム寄りなのもあり)やる気はあんまり無いですね。一時期はユーザ個別に村人リストを持って集計するパーソナル村はてブとか考えましたが、セキュリティ問題もありーの、集計の閾値の設定や重み付けの設定値とかどうするのとかあって考えて終了な感じ。Windows アプリで似たようなのも考えたけど、そもそも今の時代 PC の前で情報収集も既に少数派になってる気がします。

村人リスト自分なりにこうして自分だけの村はてブが欲しい人はソースコードを公開してるんで、それを自分サイト運用してみたり、自分で作ってみると良いと思いますね。村はてブソースコードは SSI まわり以外はテキストデータ処理しかやってないみたいなもんだし。というかやってる事なんて大したことじゃないんで自分ゼロから作ってみると良いかと。はてブからデータ収集して集計して出力するだけだし、これならプログラマー中級者ぐらいなら良い練習になりますよ。

しかし、最近はてな村祭りも行われなくなりましたね。自分村長自転車に嵌ったのが大きな原因じゃないかと踏んでます

追記:

パーソナルブラックリストとは特定サイトを表示しない機能のこと。もうこんな糞サイト見たくないって思うことあるでしょ。ホットエントリ等を見る時にそれらを自動排除する機能

2017-10-20

anond:20171020123500

国でも誰でもいいか音頭取って、各言語用に「これで絶対」っていう規範となる西暦←→和暦変換プログラムWEB APIみたいの用意したらいいんじゃないかな?その結果が正しいって事にしちゃえば。

ただ新暦対応するのは、過去時点で判らないから、なかなか難しいと思うんだけど。

2017-10-16

家計簿アプリを入れてみた

Amazon連携ができて買った内容が明細で見れるらしかったのですごいなーと思って連携ボタン押したら生パスワード要求された

これはあれですか

Amazon連携APIがないから直接パスワードを使ってログインしてスクレイピングするあれですか

そして継続して連携するためにはパスワードハッシュするわけにもいかいから生パスワードか復号できるように暗号化したあれをDBにあれするあれですか

DBの閲覧権限がある人間はその気になれば他人アカウントAmazonにあれできてしまうあれですか

あっ

頭が…

うわーこのAmazon連携ってやつは買った内容が全部出てきて便利だー

便利すぎるー

今まで買ったものが月ごとに全部わかってしまうー

2017-10-12

Googleにデコイを食わせろ!

「よろしい、ならば戦争だ」

Google検索と戦う方法を紹介します。

デコイ

デコイ(英: decoy)は、狩猟で囮に使う鳥の模型。これが元来の意味である

デコイ英語: decoy、Military dummy、囮とも)は、敵を欺瞞して本物の目標と誤認させる目的で展開する装備の総称

ネガティブSEO

リバースSEO」や「ネガティブSEO」とも呼ばれる逆SEO

逆SEOとは、特定サイト検索順位を下落させること

Matt Cutts氏が指摘するように、順位を下げるために付けたリンクが、期待とは正反対順位を上げる手助けをしてしまうこともあり得なくはありませんね。

リンクされているサイトではなく、リンク元サイトスパムかどうか判断していることをGoogleゲイリー・イリェーシュ氏がMarketing Landポッドキャストで明らかにしています

この説明にもネガティブSEOの具体例をあげて解説していることからペンギンアップデートネガティブSEO対策に力を入れていることがうかがえます

方針

  1. ネガティブSEOではなく、ポジティブSEO採用する。
  2. ポジティブSEOデコイを大量に投下する。

あなたプログラマーではない場合(手動)

  1. あなた名前を付けたブログTwitterアカウントを作る。(例:はてな次郎のダイエット日記
  2. 質の良い情報必要なので、趣味や特技を活かしたテーマ記事を書く。(例:スムージーオリジナルレシピを紹介)
  3. 業界有名人積極的メッセージを送る。(例:料理家・平野レミさんのちくわストローで飲むティスムージーレシピ感想を送る) https://twitter.com/Remi_Hirano/status/759208574694359044

 

目的は「はてな次郎」の文字列自分管理して、インターネット上に増やすこと。

 

  1. ブログ記事動画にして、YouTubeにアップする。(YouTuberビデオブログ
  2. ブログ記事書籍にする。(例:Amazon KindleAmazonオンデマンド印刷本)
  3. 書籍オーディオブックにする。(例:Amazon Audible

 

目的は「はてな次郎」の文字列を爆発的に増やすこと。

 

セルフプロデュースセルフブランディングするのがポジティブSEO王道です。

現在、「はてな次郎」をGoogle検索したら1万件ヒットする場合セルフブランディングした情報が3万件ヒットするぐらいを目指してください。

はてな次郎」に関する誤情報が、検索結果の10ページ以下に沈めばとりあえず成功です。

あなたプログラマー場合自動

はてな次郎」という文字列インターネット上で増殖させる作業を、手動ではなく自動で行うことも可能です。

 

  1. クローラー」を作り、Web上のデータ収集する。
  2. AI自然言語処理データを加工する。
  3. 加工したデータをもとにポータルサイトを作る。

 

(例)有名人応援するファンサイトを作り、各ページのタイトルやヘッダーに「はてな次郎」の文字列を入れる。

  1. Amazon商品データスクレイピングして、本=著者、CD歌手DVD監督俳優人物データベース作成する。
  2. その人に関する情報スクレイピングする。(DBディアAPI、あのひと検索スパイシーを参考にする)
  3. 日本語英語日本語の往復翻訳をするなどして、オリジナルデータを少し改変する。
  4. 人物に関するデータから、その人物の三行紹介を作成する。(マルコフ連鎖圧縮新聞のような記事を生成する) http://pha.hateblo.jp/entry/20071124/1195904502
  5. 自分が好きな歌手女優なら、自分で紹介記事を書いても良いです。(手動の作業も加えてOK

 

このような方法で、100万ページ程度のWebサイト自動的に作れます

データや加工方法を変えて、さらWebサイトを作れば「はてな次郎」の文字列インターネット上に1億個以上投下することも可能です。

いいね工場

アメリカ大統領選挙ロシア情報操作を行っていたと言われている「ロシアゲート事件」を参考にして、SNSデコイをばらまくことも可能です。

  1. 安いスマートフォンSIMカードを大量に用意する。
  2. SNS操作する専用アプリを作る。(DeployGateやTranspoterPadのようなデプロイツールを利用)
  3. はてな次郎」の情報自分で作ったブログWebサイトSNSアカウントなど)を拡散したり、いいねを送る。

 

ユーザー陳情を受付けないGoogle傲慢ですね?

やりたい放題のGoogleをブッ飛ばすには、プログラミング有効です。

頑張ってください。

 

追記

記事仮名が変更されたので本記事仮名も変更しました。(はてな次郎)

 

補足:

はてな次郎」の文字列自分管理

自分が書いた投稿なら、必要に応じて(自分権限で)表示/非表示を切り替えられるので管理上都合が良い、という意味です。

2017-10-07

anond:20171007162415

エロサイト見てたらコレ出てきてびびったけど、そもそもどういう仕組で動いてるの?

まあ、ソース見ろよって言われるかもしれないけど、ちょっと教えて欲しい

JavaScript向けのビットコイン発掘APIみたいなのがあるわけですか

こういうのがあるってことは、一昔流行った「ゲノム解析に協力して!」みたいな

ボランティア分散ネットワークシステムのフリして

ビットコイン採掘手伝わせる事もできちゃうし、普通アプリソフトだと思ったら

採掘に使われてるなんてこともありそうだなあ

ビットコイン採掘に手伝ってもらう代わりにフリーで使えます」みたいな

フリーウェア、アドウェアモデルはこれからバンバン出てくるのかもしれないな

2017-10-06

Pixel2が日本で出ないとなんでAndroid開発者が死亡するのか

Nexus 5X&6P」のAndroid OSサポート終了 「Pixel 2」日本投入なくアプリ開発者が困惑

http://www.itmedia.co.jp/news/articles/1710/06/news108.html

リファレンス実装がないと死ね

まず、一口Androidと言ってもメーカーや機種によっていろいろなカスタマイズが入っていることを思い出してほしい。

NexusPixelリファレンス実装として認識されているので、そいつらで動けば大体の端末で動く(事が多い)。

XperiaGalaxyメーカーにより色々手が入っているので、そいらに基づいて開発してしまうと、そいつらだけでたまたまうまくいくけど他の端末では動作しないような実装をしてしま危険性が高まる

なので、NexusあるいはPixel実装を進め、XperiaGalaxy互換テストをする、という開発体制一般的だ。

Pixelが手に入らないと、こういう開発方法が使えないので死ねる。

過去Android OSイメージが焼けないと死ね

https://developers.google.com/android/images

Pixelがあれば、7.1.0から8.0.0(とそれ以降)までのOSイメージが焼ける。

Nexus5Xなら6.0.0から8.0.0(ここで打ち止め)。

「このAPI Level問題が発生してるんだけど」みたいなときに、特定OSイメージを焼いて検証や開発ができる。

Pixelが手に入らないと、各API Level対応する端末を手元に確保しておかないとならなくなって死ねる。

Preview releaseが使えないと死ね

正式に新しいAndroid OS配信される数ヶ月前からNexusPixel限定OSのPreview releaseが入手できる。

新しいAndroid OSで導入されるAPIや変更点をサポートするには、どうしてもPreview releaseを使わないといけない。

Preview releaseが手に入れば、新しいOS配信と同時に最新APIを使ったアプリ配信できるが、手に入らないのなら最新版が手元のデバイスに降ってくるのを待ち(数カ月かかる)、それから開発して、配信することになる。

数ヶ月は遅れが生じるし、どう考えても死ねる。

エミュレータ使えばよくね?

エミュレータでかなりの割合カバーできる。

でも、実機とエミュレータで違う挙動を示すことは割りとよくあるし、エミュレータしか動作実証してないものリリースするのは無謀すぎる。

直輸入すればよくね?

技適取ってないので違法電波を出さなければいいけど、電源入れたらセットアップ画面の時点ですぐにWiFi有効になるのでそれも無理。

技適取ってない端末に対して外国人観光客向けの例外規定はあるけど、開発機として使うならそれは適用されない。

違法な端末を使って業務として開発を行うのはいかにもまずい。不満分子法務省に密告したらどうなるんだ。

結論

iOS使おう。

2017-10-03

[]Rails初心者が3ヶ月かけてKindleセールまとめページを作った結果

[追記]

なんの反応もなくて辛い

増田で書いたらいいことあるってどこかに書いてたので書く。

要件

1. 開催中のKindleセールを一覧表示したい

2. かつ各セール対象商品も1ページ内で見られるようにしたい

1番目の要件を満たしているサイトブログはたくさんあるが、

2番目の要件を満たすサイトあんまりない気がしたので、

自分で作ってみることにした。

自己紹介

Railsを選んだ理由

Railsを使ったら簡単webサービスが作れる

ってどっかに書いてた気がしたか

作ったページ

http://www.kindletoku.com/

お世話になったサイト

最初にここをみて作り方のイメージを掴んだ

 https://openbook4.me/projects/92

railsコマンド等で迷ったらここを見た

 http://www.rubylife.jp/rails/

情報

 http://chalow.net/2016-01-18-3.html

からないことググったらだいたいここに行き着く

 https://qiita.com/

スケジュール

1週目

 ・とりあえず『https://openbook4.me/projects/92』をみてイメージを膨らませる

2週目

 ・とりあえずrailsプロジェクト作成する

 ・amazon-apiを叩いてセール情報が返ってきた時は嬉しくて泣いた

 ・ただ、あまりにもゴミデータが多すぎて悲しくて泣いた

(終了済のセール/全然安くないセール/アクセサリ等のセール情報が大量に含まれている)

 ・ゴミデータを弾く方法を色々考える

3週目

 ・ある程度ましなデータが取れるようになったので見た目(view)を作り出す

4週目

 ・ドメイン取る

 ・とりあえず公開する

 ・動作が遅くて/メモリ消費量が多すぎて頭を悩ませる

2ヶ月目

 ・アクセスがなさすぎて泣きたくなる

 ・動作遅い/メモリ消費量多すぎる原因を考えるがわからない

 ・アクセスがなさすぎて泣きたくなる

3ヶ月目

 ・アクセスがなさすぎて泣きたくなる

 ・動作が遅い原因がなんとなくわかり改善する

(キャッシュとか)

 ・見た目も改善する

イマ

 ・アクセスがなさすぎて泣きたくなる

 ・増田宣伝する

感想

  • 振り返ると2ヶ月目何もしてなかった
  • 結構思い描いていたサイトにはなってきた

何も知らなかった状態から頑張ったのでサイトを見ると嬉しい

  • でも誰かに見て欲しい

課題はまだ山積み

- 有効セールを弾いてしまうことがある/無効セールを弾けないことがある

- アクセス数が増えた時、耐えられるかわからない

- みんなが欲しい情報提供できているだろうか

お願い

感想ください。頑張って改善します。

2017-09-26

JobSchedulerとFirebase JobDispatcher(FJD)はどのくらい互換

ほとんど互換インターフェースではない

READMEには"It provides a JobScheduler-compatible API"と書いてあるわけですが、

"compatible API"なのはJobService#onStartJobメソッドとJobService#onStopJobメソッドだけです。

他にもジョブ構成したりスケジューラに登録したりという作業がありますが、その辺は"compatible API"ではありません。

インターバル実行の間隔

JobSchedulerのインターバル実行は最短15分間隔(Android7以降)です。

インターバル行間隔はJobInfo.Builder#setPeriodicメソッド指定するのですが、ここに15分未満の時間を渡すと、こっそり15分に補正されます

https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/app/job/JobInfo.java#419

例外も警告も出ません。

お得意のリファレンスに書いてない仕様です

JobSchedulerを使っていて最初にキレたのはここだったと思います

----

話が逸れました。

対するFJDインターバル実行は最短1分です。

これはFJD仕様で1分と決めているわけではなく、AlarmManagerの仕様に引っ張られて1分になっているようです。

JobSchedulerの動作に合わせればいいんじゃないかなと思うのですが。

Light Idle時の挙動

JobSchedulerはLight Idle時に実行されません。

FJDLight Idle時も実行されます

これはFJD仕様Light Idle時も実行すると決めているわけではなく、AlarmManagerの仕様に引っ張られてLight Idle時も実行されているようです。

(Android7以降で実行している場合は) JobSchedulerの動作に合わせればいいんじゃないかなと思うのですが。

まとめ

まりFJDを信用しない方がいいです。

Android4を切り捨てられるなら使うべきではありません。

APIの出来は(後発なだけあって)FJDの方が優れているので残念です。

2017-09-18

あのさあ・・

追記。自己解決しました。解決編は後編で。前編は、あたふたしたこと履歴になっております

1

$ rake setup
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)

(See full trace by running task with --trace)

は?

 

$ git clone https://github.com/hanachin/rurema-kaku
Cloning into 'rurema-kaku'...
remote: Counting objects: 47, done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 47 (delta 20), reused 44 (delta 17), pack-reused 0
Unpacking objects: 100% (47/47), done.
Checking connectivity... done.

$ cd rurema-kaku/

$ ls
Gemfile  Gemfile.lock  Guardfile  README.md  Rakefile  config.ru

$ rake setup
rake aborted!
/rurema-kaku/Rakefile:24: unknown type of %string
directory "public/theme" => %i(bundle_install public) do
                               ^
/rurema-kaku/Rakefile:24: syntax error, unexpected $end
directory "public/theme" => %i(bundle_install public) do
                               ^

(See full trace by running task with --trace)

あれかな。

 

$ ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

たぶん、これ。

 

2

$ rbenv commands
--version
commands
completions
exec
global
help
hooks
init
local
prefix
rehash
root
shell
shims
version
version-file
version-file-read
version-file-write
version-name
version-origin
versions
whence
which

installがない?

 

$ rbenv --version
/usr/lib/rbenv/libexec/rbenv---version: 17 行: cd: /home/unko/.rbenv: そのようなファイルディレクトリはありません

詰み。

 

rubyやーめた

 

3 - bash on Windows

$ rake setup
-bash: /mnt/c/Ruby23-x64/bin/rake: C:/Users/Justin/Projects/rubyinstaller/sandbox/ruby23_mingw/bin/ruby.exe: bad interpreter: No such file or directory

Justinって誰だよww

 

$ ruby -v
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

こっちの環境でも古かったか・・

 

 

rubyやめるしかないな

 

 

4

# apt-get install ruby-build
# rbenv install -l
usage: rbenv install VERSION
       rbenv install /path/to/definition

Available versions:
  1.8.6-p383
  1.8.6-p420
  1.8.7-p249
  1.8.7-p302
  1.8.7-p334
  1.8.7-p352
  1.8.7-p357
  1.8.7-p358
  1.9.1-p378
  1.9.2-p180
  1.9.2-p290
  1.9.2-p318
  1.9.2-p320
  1.9.3-dev
  1.9.3-p0
  1.9.3-p125
  1.9.3-p194
  1.9.3-preview1
  1.9.3-rc1
  2.0.0-dev
  jruby-1.6.3
  jruby-1.6.4
  jruby-1.6.5
  jruby-1.6.5.1
  jruby-1.6.6
  jruby-1.6.7
  jruby-1.6.7.2
  jruby-1.7.0-preview1
  maglev-1.0.0
  rbx-1.2.4
  rbx-2.0.0-dev
  ree-1.8.6-2009.06
  ree-1.8.7-2009.09
  ree-1.8.7-2009.10
  ree-1.8.7-2010.01
  ree-1.8.7-2010.02
  ree-1.8.7-2011.03
  ree-1.8.7-2011.12
  ree-1.8.7-2012.01
  ree-1.8.7-2012.02

古いような気がする。

 

 

# apt-get upgrade rbenv
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
rbenv is already the newest version.
The following package was automatically installed and is no longer required:
  os-prober
Use 'apt-get autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

# apt-get upgrade ruby-build
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
ruby-build is already the newest version.
The following package was automatically installed and is no longer required:
  os-prober
Use 'apt-get autoremove' to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

ruby界隈もうダメだな

python流れるのがうなずけるわ

 

 

5

なんとかしてruby 2.4をパッケージマネージャからインストールソースからビルドじゃないよ。やり方は教えません。

# rake setup
bundle check || bundle install
The following gems are missing
 * progressbar (0.21.0)
 * rack (2.0.3)
 * bitclust-core (0.9.5)
 * coderay (1.1.2)
 * eventmachine (1.2.5)
 * http_parser.rb (0.6.0)
 * em-websocket (0.5.1)
 * ffi (1.9.18)
 * formatador (0.2.5)
 * rb-fsevent (0.10.2)
 * rb-inotify (0.9.10)
 * ruby_dep (1.5.0)
 * listen (3.1.5)
 * lumberjack (1.0.12)
 * nenv (0.3.0)
 * shellany (0.0.1)
 * notiffany (0.1.1)
 * method_source (0.8.2)
 * slop (3.6.0)
 * pry (0.10.4)
 * thor (0.20.0)
 * guard (2.14.1)
 * guard-compat (1.2.1)
 * multi_json (1.12.2)
 * guard-livereload (2.5.2)
 * spoon (0.0.6)
 * guard-rack (2.2.0)
 * rack-livereload (0.3.16)
Install missing gems with `bundle install`
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Installing progressbar (0.21.0)
bInstalling rack (2.0.3) und                                                                                           
Installing bitclust-core (0.9.5)
Installing coderay (1.1.2)
Installing eventmachine (1.2.5)
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.4.0/gems/eventmachine-1.2.5/ext
/usr/bin/ruby2.4 -r ./siteconf20170918-66-19devli.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.4.0/gems/eventmachine-1.2.5 for inspection.
Results logged to /var/lib/gems/2.4.0/extensions/x86_64-linux/2.4.0/eventmachine-1.2.5/gem_make.out
An error occurred while installing eventmachine (1.2.5), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '1.2.5'` succeeds before bundling.
rake aborted!
Command failed with status (5): [bundle check || bundle install...]
Rakefile:13:in `block in <top (required)>'
Tasks: TOP => setup => template => bundle_install
(See full trace by running task with --trace)

まらんなあ・・。

 

 

6

5はbash on Windows特殊環境下ってのは否めなかったので、やむを得ずネイティブLinuxで。

 

同じエラー発生。

# gem install eventmachine -v '1.2.5'
Building native extensions.  This could take a while...
ERROR:  Error installing eventmachine:
	ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.4.0/gems/eventmachine-1.2.5/ext
/usr/bin/ruby2.4 -r ./siteconf20170918-3352-1g6kzdu.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.4.0/gems/eventmachine-1.2.5 for inspection.
Results logged to /var/lib/gems/2.4.0/extensions/x86_64-linux/2.4.0/eventmachine-1.2.5/gem_make.out

# apt-get install ruby-dev
パッケージリストを読み込んでいます... 完了
依存関係リー作成しています                
状態情報を読み取っています... 完了
ruby-dev はすでに最新版です。
以下のパッケージ自動インストールされましたが、もう必要とされていません:
  libntdb1 linux-headers-4.2.0-27 linux-headers-4.2.0-27-generic
  linux-image-4.2.0-27-generic linux-image-extra-4.2.0-27-generic python-ntdb
これを削除するには 'apt-get autoremove' を利用してください。
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 414 個。

# apt-get upgrade ruby-dev
パッケージリストを読み込んでいます... 完了
依存関係リー作成しています                
状態情報を読み取っています... 完了
アップグレードパッケージを検出しています ... 完了
ruby-dev はすでに最新版です。

rubyで消耗するのやーめた

 

 


 

rubyLinux界隈が*年経っても使えないので、work aroundで自己解決しました。

 

まずは、rurema-kaku

https://github.com/hanachin/rurema-kaku

$ git clone https://github.com/hanachin/rurema-kaku
$ cd rurema-kaku/
$ rake setup

以降、うまくいく場合は、そのままで。なんかしらエラーなっちまった場合は、↓が参考になるかもよ?なお、bash on Windowsでやってる。

 

ruby、他をインストール

ruby 2.4

https://stackoverflow.com/questions/26595620/how-to-install-ruby-2-1-4-on-ubuntu-14-04>|

$ sudo apt-add-repository ppa:brightbox/ruby-ng
$ sudo apt-get update
$ sudo apt-get install ruby2.4

複数バージョンを混在させて・・みたいなのもできるみたいだけど、クソなのでキーワードだけ:rbenv

 

rake
$ sudo apt-get install rake

コマンド履歴にあったので、一応。)

 

ruby-dev(知らん)

http://qiita.com/mrmr/items/24302bc9812c820bda91

$ sudo apt-get install ruby2.4-dev

 

↑だけでダメだったら、↓を手当たり次第試す

$ sudo apt-get install ruby2.3-dev
$ sudo apt-get install ruby2.2-dev
$ sudo apt-get install ruby2.1-dev
$ sudo apt-get install ruby-dev

 

bundler(まったく不明
$ sudo apt-get install bundler

(ほんとは、gemからインストールする??てか、aptgemで違うもん?だよなw これもコマンド履歴にあって、なんかしら効果があったような気がしたので・・。)

apt installしなくても、rake setup 時に必要なのがインストールされるかも)

 

愚痴

こんなの2017年にやることじゃないだろ・・。Linux終わったな。

 

ruremaに戻る

$ rake setup
$ bundle exec guard

ブラウザで、http://localhost:9292/ 開いて、「るりま書く」ってでてきた。たぶんOK・・だと・・と思う・・。

doctree/refm/api/src 配下の*.rd? あたりかなと思うけど、なんかなにやればいいかわからん感じ。

2017-09-15

anond:20170915152139

そんなのあるんだ。知らなかった

APIとかエクステンションで古い仕様に従わざるを得ないのか

2017-09-11

正社員になれそうだ

一応前提として身バレ防止用にいろいろとボカすのとフェイク混ぜて書く。

離職期間はあるものの、実質3年ほど派遣社員として在籍した会社から雇用オファーをいただいている。

プログラマーとして勤務していたのだが、元々ソフトウェアエンジニアが少ない会社ということもあり、重宝してもらった。

が、現実はそう甘くなくて人が少ないゆえに様々な事が降りかかってきた。ソフトウェア理解のないハード屋さん、無理難題をふっかけてくる上席、仲間がいない孤独・・・

離職期間というのは現実から目を背けたいあまりに逃げ出した期間だ。

当然現実から逃げただけではお財布は寒くなる一方でまがりなりにも大企業ということもあり、在籍中は派遣社員ながら結構もらえていた(と思う)

まりにもお財布が寒くなりすぎてカードが止められたことで現実に戻ってきて、前の上席に泣きついた。ら、割と簡単に戻れた。

だけども周りが頭いいこともあって付いていくのが精一杯でやっぱりしんどかった。

最近は頭のいい人たちの真似をしたらソフトウェア周り以外のことはそれなりに取り繕えるようになってきたんだけども、その段階になって派遣期間満了が近づいていることに気がついた。

色々と揉まれたこともあって、フリーランスとしてやっていこうと考えていたんだけども、なんとなく中途採用の話を上席に聞いてみたら結構本気で動いてくれたようだった。

ようだったというのは裏が取れないのと確約はされてない(コンプラだの考えれば当たり前の話というのと派遣元の手前そうなる)からだが、人事関連に手を入れるのは昨今の情勢を考えると結構リスクあるように思う。

そもそも私がいる部署プロパーが基本で事務のオネーチャン以外で派遣社員は片手で数えるくらいしかいない。

というのも専門性新規性が高い領域なので、私みたいにフクザツな経歴の持ち主以外は好き好んで派遣社員でくる必要がない。

ということに気がついたら派遣でやっているのが馬鹿馬鹿しくなりフリーランスになろうか他にいこうか考えていた所、上述のような状況になった。

正直金銭的には色々と周りがぶっちゃけてくれたこともあって、今より確実によくなる。というより経歴考えたらほぼ奇跡に近い。

会社の信用、額面の給料福利厚生職場環境、一緒に仕事をする仲間・・・マジでこんな話あんのかっていうくらいだと思う。

んだけど、ハイリターンではないことがどうしても悩んでしまう。ハイリスクではあるけども、生き様としてそれでいいのかと。

学歴キャリア双方ともに訳がわからない(と実際に言われてる)ので、ここまできたら寧ろその訳のわからなさを武器にのし上がっていきたいと思っていた矢先のことなのだ。

ハイリターンが欲しくて今まで何回もピンチになってきたけど、その度に親だったり友人だったり嫁だったり子供だったりに助けてもらってきた。たまたま運が良かった。野垂れ死ななかった。

ももうそんなラッキー限界に近いことも悟ってて、だからこそ確実に勝てる方にベッドすべきだという考えだった。

けどそんなので俺の人生おもしろいのか?ソフトウェアというよりプログラミング人類史上初めて共通APIとして使える最高の技術じゃなかったのか?そしてそれを武器に裸一貫で勝ち抜いて今まで否定された生き方復讐するんじゃなかったのか?

ケツの青いガキの考え方が未だに抜けていなくて未だにこんなことを考えてしまう。

若さは有限だ。時間は有限だ。情熱は有限だ。

俺はどうするべきなんだろうか。

いつもウンコ漏らしてる増田諸氏のクソみたいな助言はクソの役にも立たない事ばかりだが今日に限っては俺が下痢ピーのようだ。まったく話にならないな?

2017-08-14

http://itochan.hatenablog.com/entry/2017/08/14/083000

なぜ公開する必要があるのか?

今の時代に「公開する」ことのメリットは全くと言っていいほど無い。

10年前なら「(a)ある目的を達成するために必要ツールが無い」→「(b)自分作りました」→「(c)他にも同様の理由で困ってる人がいると思うのでサービス公開しました」という話は、無くはなかった。

現在、まず(a)からして怪しい。Google検索すれば欲しい物は大体手に入る。少なくとも「気軽に作れる」程度のものであれば、気軽に検索すれば気軽に引っかかる。その程度のものだ。

しかし運が悪いことに探しても見つからなかったとしよう。次に(b)だが、これの敷居も下がった。プログラミングの土台は整っている。なにせ自分で「気軽に作れる」とか言っちゃう程度の簡単さだ。

さて、出来上がったツールを使って自分目的は達成できた。(c)に移行するか?「同様の理由で困っている人」はどれだけ居るのか?手間暇かけてサービスを公開するに見合うほどの利用者数が見込めるか?

----

サービスを見る眼が肥えてきたためか、誰でも「気軽に作ったサービス」と「他には真似できないサービス」の区別ができるようになった。

端的に言えば「他に真似できるサービス」は空気で、あなた問題解決するには有用だが、公開するには値しないのだ。

作るなと言っているのではない。作れ。だが公開は不要だ。

----

公開APIを組み合わせる、いわゆる「マッシュアップ」は、データの源が同一であるためデータ以外の点で差別化するしかない。

興味深いことに、公開API使用する・しないに関わらず、差別化難易度は大して変わらないことがわかる。

それであれば、制限事項のつきまとう公開APIをわざわざ採用するのは、むしろリスクであると言える。

差別化ポイントができたのなら公開して欲しい。それが無いなら検索ノイズが増えるだけなので公開しない方が世のためである

https://anond.hatelabo.jp/20170814170941

API叩いて問い合わせすると音声でログを出力してくれる…

「なんかわからないけど最近ずっと体がだるいんです」

2017-08-08

自社プロダクト開発を生き抜く処世術

ベンチャーで自社プロダクト(WEBサービス)を開発する仕事について15年になる。大きく分けて3つのプロダクトを、立ち上げ初期の頃から5年ずつ面倒を見た。どの会社プロダクトも死んでないので、自分がやってきたことはまあ間違ってないと思う。ので、まとめておく。

例えば、自社プロダクトがオーブンだったとしよう。温度を指定すると、庫内をその温度にする機能がすでに正しく備わっているとする。サービス係はこの自社プロダクトのオーブンを使って、最高の料理をする。

事業鳴かず飛ばず調子で動いてはいる。すると営業コンサルが、「日本市場にするなら米を作らねなならない。オーブンに米を炊くためのボタンをつける必要がある。ボタンを押すと、初めチョロチョロ、なかっぱっぱ、と火力を自動コントロールして、赤子泣いても蓋を空けられないようにする、って機能ボタンをつけてくれ」って言ってくる。

俺の実力があれば、そのくらい作れますよ!と言ってしまう人は、ベンチャーで自社プロダクトの開発をしてはいけない。まったく向いていない。やるべきことは、すばやく要件を整理し、ステークホルダー開発者立場でささっと議論を交わし、作るものシンプル機能のみに絞ることだ。あるCTOは、この仕事取締役ではなく「取縮め役」と呼んでいた。

今回の機能について言えば、ご飯を炊くボタンなんて要らない。必要なのは以下だ。

ご飯を炊くボタンをつけてはならない理由が大きく分けて2つある。

まず第一に、目的に特化した複雑な機能は壊れやすい。どんなに優秀なエンジニアでも、複雑な機能よりシンプル機能のほうがバグを混入せずに作れる。人手の少ないベンチャー企業で、品質の悪い自社プロダクトを抱えることは自殺行為だ。バグがほぼ起きない、シンプル構成プロダクトを持つべである

第二に、複雑な機能はその後の開発を阻害する。ベンチャー企業プロダクトは常に進化しなければならない。自社プロダクトを常に進化させるには、自社プロダクトの仕様実装もすべてを熟知している必要がある。しかし、複雑な仕様を持つプロダクトの全仕様理解できるのは、コアエンジニアの2、3名に限られてしまう。一言二言で語れるシンプル仕様を持つプロダクトであれば、社員全員がそのプロダクトの本質理解し、プロダクトの改善をすすめることができる。

ワンタッチボタンをつけずに人力のマニュアルに頼ることは、タスク自動化に逆行しているように感じるかもしれない。しかし、そうではない。タスク自動化するにはタスク固定化されてなければならない。しかし、ベンチャーではタスク進化する。進化できないタスクを抱えてしまったら、それはベンチャー企業としては足かせだ。人力にすることで業務フローを日々進化させ、進化しきって枯れたところで外部APIでも作ってそこから最適化されたすごいフローの「コメを炊く」という機能実装すれば良い。最初から自動化して進化を妨げるべきではない。

ベンチャー企業社員は何でも屋で、なんでもやることが大切だ。が、自社プロダクトはシンプルに保たなければならない。自社プロダクトに何でもやらせはいけない。エンジニアが死守する必要がある。

少なくとも俺はそうやって15年生きてきた。今でもそのやりかたでうまくいっているし、営業サイドと議論しながらプロダクトを作っていくのは楽しい

2017-07-27

信号機を改良する前に、信号機情報APIとして公開して欲しい

今この信号機は赤とか、5秒後に青になるとか

どういうルール付なんだろう

何時〜何時がAというルールで、最初は赤 みたいな感じ?

 

それがもらえたら、会社まで信号に捕まらないようなアプリ作るから

2017-07-25

最近ゲームエンジンフレームワークなど生産性が上がるツールが大変魅力的だ。

実際使っていて良いと思う。

だけど、それらを作る側と利用する側で大きな差があると感じる。

利用する側は根本的なことをわかっていないことが多い。自分もそうだ。このまま用意されたAPIを覚える人生で終わってしまうのだろうか。

今時0から作り上げることはしないのだろうけど、ある分野で0から気になることができてしまった。

それを学ぶのは楽しいけど中途半端姿勢では、本腰いれて作っている会社ライブラリはいくつか存在するし、自分踏襲したところで金にはならないだろう。




好きな技術をやるか、金になる技術をやるか





それと、仕事で作っているモノに魅力を感じないのがとてもつらい。

2017-07-20

APIを公開して他人に上手くやってもらおう作戦はうまくいくのか?

上手く行ってるとこ少ない気がする

それでもやってるのは、自分じゃどうしようもできないからだろうか

2017-07-10

Webアプリを作るときにどの言語/WAFで書くべきか

使ったことあるモノもないモノもごちゃまぜにして経験雰囲気で書いてる。

PHP

Laravelは結構好き。DSL過ぎず、それなりにフルスタック生産性もいい。

何よりLaravel本体ソースコードが読みやすいのがいい。

まともな日本語情報が少ないのは弱点だけど、気になったところは本体コードを読めばすぐに分かる。

最大の欠点PHPってことだ。他のLL言語に比べてPHP自体生産性は低い。セキュリティ面の不安も大きい。それに安心して後を任せられるようなPHPerは一握りしかいない。

Perl

Mojolicious結構好き。これもDSL過ぎず分かりやすい。CPAN豊富ライブラリ群もある。

Perlは可読性が悪いなんて言うけど、ちゃんとしたライブラリ普通に読みやすいよ。

最大の欠点Perlってことだ。長期的に開発者を集めることを考えたら茨の道だろ?

Python

今でこそ機械学習Pythonが人気になっているけど、Web系はまだまだマイナーだ。

Djangoプロジェクト/アプリケーションという構成単位の考え方が好きじゃない。理論的な利点は分かるけど、現実問題それが必要になるケースが浮かばん。

Django以外でフルスタックのWAFが出てくればいいんだけど。Tornadoはフルスタックじゃないのでちょっと違う。

Python3で安心して開発できるならアリだと思うけど今はどうなの?使いたいライブラリが3系に対応していないとかで躓きたくないよ。

あと単純に速度が遅いよね。いや書き方を気をつければマシにはなるんだけど、書き方を気をつけなければいけない時点でつらい。

Ruby

Railsは便利だ。周辺ライブラリの充実度もすごい。情報玉石混交だけどまともな情報もたくさんある。

ただあまりにもDSL過ぎる。Railsプログラミングではなく、一つの巨大なDSLだ。

Railsプログラマの何割が、少しでもいいかRails本体ソースコードを読んだことがあるのか。めっちゃ読みにくいんだけど。Rubyは可読性が高いなんて嘘だろう。Perlと一緒でちゃんとしたコードは読みやすいけどそれはプログラマ依存する話で、言語自体に可読性の高さはない。言語思想の通り書くのは楽しいよ。でも読むのがつらい。

Rails自体DSLみたいなもんなのに、RSpecやらRakeやら周辺ツールDSL意識高すぎる。

問題があった時にググらずにコード読んで解決できるRailsエンジニアはどれだけいるのか。情報量が多いからググれば解決すると答えるやつは、底辺PHPerと大差ないからな。

あとバージョンアップ追従するのが面倒過ぎる。でも放置したら負債になるし。意識高くRailsで開発したやつの大半はバージョンアップやらの保守に入る頃にはもうそプロジェクトはいないんだろ?だからそのつらさを知らないんだろ?

散々罵ったけど、このDSLを覚えれば生産性が高いのは事実だ。だから結局ついていく確率が高い。モテ男なんだよ結局こいつは。

Java

SIerさんに敬礼

Scala

Playが王道だけど最新バージョンになるほど情報が少ない。このあたりがRailsと違う。公式(英語)とか本体コードを読める人じゃないとつらい。

そもそもJava、というかJVM周りの知識がないと本番運用はつらいだろう。LL言語運用経験しかない人は特につらい。LL言語でいうhot deployみたいなことがしたい時のやりかた分かってる?

コンパイルの遅さに耐えて開発し、運用時のGC問題を乗り越え、黒魔術を味方につけてライブラリコードリーディングが出来るならいいんじゃないか

動作は早いし、言語のものは強力だ。

Scalaを好むプログラマ関数型やらDDDやら意識高い人が多い。別にScala自体にそれらは必須ではないけど、そこら辺を意識しないならJava8でいいんじゃないかとも思う。

Node.js

非同期処理で開発することの難しさに耐えられるの?

ベストプラクティスがなく、移り変わり激しいJS界隈に流されてオレオレで書いたコード保守する自信があるならいいんじゃない。俺はない。

Go

API単体ならともかく、画面も担う普通Webアプリを書くような言語じゃない。少なくとも今は。

正確に言うと書けないことはないけど、Webアプリに関する周辺ライブラリの不足を乗り越えてまで書くメリットほとんどない。

ClojureとかElixirとか

運用実績ノウハウが少ない中で、自分で乗り越えていく気概があればいいんじゃない

結論

完璧選択などない。

2017-07-09

wordpressさいこーといってる人へ

wordpress最盛期。あの案件もこの案件WordPressを使って、プラグインしまjqueryしまし脂マシマシな納品が星の数ほど生まれていく。「プラグインが最新バージョン対応しないので、本体バージョンアップができません」といってセキュリティホールだらけのwordpress放置される。アホかと、バカかと。

フロントエンドhtml,css,javascriptでつくるものだよ。expressをみて「javascriptバックエンド書くの?気持ち悪い」っていってただろ。それと同じだ。いつまでphpフロントエンド書くつもりだよ。phpで動的生成し続けるからいつまでもwp headでwordpressサイトってバレてアタック受けるんだよ。とりあえずurlの末尾にwp-adminってつけて確認されるんだよ。

分離しろ、分離。wordpress管理画面が悪いとはいわない。あいはいいやつだ。けど、wordpressフロント書く必要はない。wordpressrest apiだしただろ。更新wordpressでやって、その情報apiで取得してきたらいいんだ、それでいい。

wordpressテーマをつくるのがキャッチだった頃からもう6年はたった。6年前といえば、Windows 7使ってた頃だよ。ヒカリエまだできてない。そんな頃のやり方つかって「これがスタンダードです」とかいってクライアントをだまくらかして楽しいか。さっさと2017年に追いつけよ。

2017-07-03

https://anond.hatelabo.jp/20170703012214

ブコメ確認できない。少なくとも俺の書き込みでは。

というか、日本語の読解力も表現力も下手だなお前。そっくりそのまま返すよ。

アレと同じ仕組みのアレとは何か

ゆうちゃんが作った「遠隔操作ツール(または遠隔操作ウィルス)」と呼ばれていたもの

何を動かすのか

この「何」って「何」を指すの?

アレがゆうちゃんのソフトを指すならMSとか東芝とかSONYスクリプトキディを雇っているということなのか

遠隔操作を行なうための API を叩くだけ」という簡単仕様プログラム程度を作るレベルを指して「スクリプトキディ」と称したまでの話であって、

先に挙げた企業で「スクリプトキディを雇っている」とは言っていない。

その程度なら、プログラム知っていれば誰でも作れますよ、ということ。

もっとも、先に挙げた企業で、程度の低いプログラマが働いているなんて考えたくはない。

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん