「技術」の検索結果 5件

フリーランスエンジニアの皆さん、技術の習得ってどうしてますか?

おはようございます 今日も5時に起きて、自分が管理しているWordPress(Kusanagi)のSSLの自動更新がうまく動作せず悩まされている、どうもumentuです。kusanagi便利なんですけどね、こういうことがあると意外と手間取りますね。 技術の習得 フリーランスエンジニアの皆さんって、新技術に限らずですが技術の習得ってどうしていますか?会社で働くよりも技術の習得にかけられる時間って多いかとは思うのですが、どのようにしているのか、改めて考えるとかなり人それぞれなのではないのかな、と思って文章を書き始めてみました。思いつくままいくつかパターンを考えてみたので、それ以外のものがあれば情報をいただけると大変嬉しいです。 案件ベースで習得 使ったことのない技術の案件を受注する、もしくは習得している技術の案件に使ったことのない技術を取り入れてみる、といった方法で習得することができるかと思います。前者の方はできなかった場合のリスクが大きいですが、後者の方であれば、やりやすいですよね。   技術の習得の時間をとって習得 これは当たり前といえば当たり前の方法でしょうか。ただ、モチベーションがないと続かないというところではありますね。フリーランスの仕事って時間が取りやすい反面、取りやすいからこそ空き時間に案件を入れられたら入れたくなるのも事実。そこをあえて時間をとる、という選択肢がとれるかどうかにかかってきますね。   イベントに参加して習得 セミナーやハンズオン、あとは大きなイベントに参加して新技術に直接触れる、という方法はあるかと思います。イベントに参加するというモチベーションは必要ですが、他の人と一緒にやるという意識が発生するため、一人でやるよりはモチベーションが維持できそうですよね。   ただ、個人的な話をさせてもらうと、私としてはあまり得意ではありません。極力一人で作業することが好きなため、です(そういうフリーランスの方って多いと思うんですけどね)。これが原因で視野がせまいんですよねー。。。。観に行くイベントだけでも参加するようにした方がいいですよね。   書籍で勉強する 書籍のまとまった情報で勉強するのはいいですよね。私はこれが好きです。が、書籍の情報って特に技術書は古い情報が多く、習得しているタイミングのものとズレが生じていることもしばしば。結局ネットの情報に頼ることが多くなりますね。あとは書籍代というコストが発生することと、書籍はかさばります。まぁ電子書籍でもいいんですが、技術書ってなんとなく書籍の方が読みやすいことが多い印象なんですよね。でもかさばると、うちの場合奥様の鋭い目線が……。みないふりみないふり。   ネットを活用 まぁこれは上記の全ての方法に含まれる方法ですね。ドキュメントは最新のものが多いですし、ネットの情報は断片的なので、取得したい情報を検索すればよいだけなので。ですがそれが故に、意外と知識が広がらないというデメリットもあるとは思うんですよね。自分の興味のある範疇しかみないことが多いからです。とにかく読みかじれる人であれば、上のどの方法よりもいい方法ですよね。   とここまで書いて気づいたこと 上記の方法って、別にフリーランスだからというわけではないんですよね。ただ、やはり冒頭でも話をした通り、フリーランスは比較的時間が取りやすい、というところなんですよね。その時間をいかに使うか、というところですね。よって、会社で働く人以上にモチベーションが試されるんだろうな、というなんとも簡単な結論にいきつきました。   しかしフリーランスは従業員として働くよりも幅広いスキルが必要なはずです。そして、その中でも専門的な分野を掘り下げて行く必要もあります。それがそのまま実益になりやすいところがいいですね。   今、さまざまな場面で働き方改革、という言葉が出てきますが、フリーランスは一人で改革できるところがいいですよね。もし今怠惰な状態かなー、とか思ったら、改革してしまえばいいのです。まぁ、そんなに簡単にできるくらいなら怠惰にならないか……(自己反省)。   モチベーション下がり気味の方、一緒に働き方改革しましょう!    

umentu、RaspberryPi & OpenCV & Tensorflow & Keras おじさんになる

おはようございます どうも、クライアントに逃げられ、とっても陰鬱umentuさんです。 今日は、技術的な話をちょっとだけしたいなと思います。 というのも、先日技術ブログの方に上げた記事のおかげでアクセス数が急激に増えたからです。   なぜ今OpenCVやTensorflowやKerasなのか 私はかつて、OpenCVの記事をひたすら毎日あげていた時期がありました。とにかくアイデアを絞り、かつ数学的な解釈の部分をできるだけ出さないようにしつつ画像解析の説明をすることにハマっていたからです(まぁ、その頃休職していて暇だったこともあったのですが。。。)。そんなこともあり、日本語のOpenCV界隈では、それなりに一次ソースとして活用してもらえるような状態になっています。他にも優れた記事を書かれているブログはたくさんありますが、ね。 そんなこんなで今、なぜまたOpenCVに戻ってきたかと言うと、「OpenCVを使いたい」という案件に巡り合ったからです。それも、かつて記事を書いていたおかげでした。Facebookにとある方からメッセージが有り、その方の案件を引き受けさせていただくに至りました。あまり多くを語るといけないので、案件に関してはこれくらいで。 というわけで、再度OpenCVの海に繰り出してみたところ、初っ端からちょっと楽しくなるくらいアクセス数が伸び、「これはいける」と思って、それならいっそTensorflowだのKerasだのをひっくるめてやってしまおうというふうに至ったわけです。 意外と簡単 Tensorflowは実のところ、あまり表立ってはいないのですが結構使っていました。ただ他の方の記事があまりにも優れていることと、なによりGoogle様のアウトプットが素晴らしすぎるため、あまり公開するのも意味ないなぁと思って出さなかったのです。Kerasはまだ初心者です。 OpenCVとTensorflowって、まぁそりゃそうなのですが親和性高いんですよね。画像関連の取得にOpenCVを使い、それをTensorflowで学習する。OpenCVだけでも、人の検知などはそれなりに結果が出るのですが、やはりそれなり止まりなのが正直なところです。遠くにいる人などを検知するには、やはりディープラーニングの力には到底及ばないわけです。Caffe?あぁそんなのもいたなー(遠い目) かなり情報は出尽くされていて、OpenCVとTensorflowを組み合わせるというのはかなり簡単です。そこにKerasが入ることで、より簡単にTensorflowが扱いやすくなる、というよりTensorFlow、CNTK、Theano といったディープラーニングの他の手法も取り入れやすくなるわけです。こういった画像解析にご興味のある方、コメントにてご連絡お待ちしております。一緒にお仕事しましょう。 ここに来てつらいのがRaspberryPi で、タイトルにもあるようにRaspberryPiも使っているのですが、RaspberryPiはかなり辛いんですよね。何が辛いかと言うと、環境構築です。Tensorflowを使おうとしてもTensorflowは公式的にはUbuntu用にしかないし。そもそもPython絡みでも結構縛りがあるし。あとスペック的にも何をインストールするにも時間がかかるし。SDカードは吹っ飛ぶし。 SDカードにRaspbian書き込んでたらSDカード逝ったあああああああああああああああああああああ #raspberryPi — umentu(CTO) (@umekichinano) June 7, 2018 でも、クラウドソーシングのサイトを見ていても、それほど多くはないですが、プロトタイプとしての開発にはやっぱりRaspberry Piなんですよね。もう少しでいいからスペック的に良いものがでてくれると嬉しいです。SSD搭載とか。こうなるとちょっと違うとはおものですが、ね。   経験はないですが、お仕事したいです 本音が章タイトルに出てしまいましたが、画像解析とか機械学習系のお仕事を是非したいです。日々勉強して技術ブログの方に上げていきますので、何かリンクする所があればぜひご連絡ください!    

Mastodonを大規模になる前提でAWS上に構築した話

ご挨拶 どうも。朝とってもはやく起きてしまう、umentuです。早起きは10万の得 じゃないですけど、朝活動するといいこともあるものですね。昨日さっぱり解決できなかった件が、あっさりと解決できました。そしてもう一度寝る前に、ちょっと文章を書いてみようと思ったわけです。ちょっとだけ、技術的なお話です。 楽しい案件 現在、クラウドソーシングで頂いた案件で、Mastodonを構築しています。Mastodon自体はVPSや自宅サーバに何度も立てたことがありました。ですが、今回はちょっと、というか大幅に違っていて、かなり大規模になる可能性のあるMastodonを構築するに至ったわけです。そのため、いろいろと課題が発生しました。それを少しだけ、お話したいと思います。ばれない範囲で。   サーバーの選定 そもそもクライアント様は、あるクラウドサービスを利用する前提で動いておりました。ですがうまくいかずに、とあるクラウドソーシングで案件を出されている状況でした。Mastodonの構築、いろいろと厄介なんですよね。 で、案件を読むととても興味深く、すぐに応募させていただきました。そこで事情を伺ったところ、そもそも構築自体でつまづいている状況だったため、そのMastodonの利用者が大きくなるといった前提があまり加味されていませんでした(とても普通のことです)。そのため、サーバの選定から提案させていただいたところ、提案を受け入れてくださいました。誠に感謝です。 そこで、様々なことを調べていった結果、今回はAWSを使って構築するに至りました(まぁ、ありきたりな選択ではありますよね。)。AWSを使った理由としては、   ☆ Pawoo様がAWSを選定していた(https://logmi.jp/200000) ☆ Mastodonで必須なRedisなどを独立したインスタンスで構築したかった ☆ なんだかんだで使い慣れている   といったところが理由でした。小規模であれば、通信量も定額なVPSサービスがいいんですけどね。 構築に至るまで AWSに決めて、さて構築しようとしたわけですが、調べてみると皆さん様々な方法でAWSに構築されているわけです。いろいろ調べた結果、「Dockerを使わずに構築する」方向でいくことにしました。Dockerを使ったほうが構築自体は簡単なのですが、Redis等をAWSのそれぞれのサービスのインスタンスで構築したかったため、そうなるとDockerでの構築の恩恵があまり受けられなくなるからです。   方向が決まれば構築なんてさくっと……と思ったら。。。 意外と苦悩の連続 AWSのやつぁ、本当にサービスの拡充が早いですね。ある程度は頭に描いていたサービスを利用して構築しようとしていたのですが、いくつか「あれ、こっち使ったほうが楽なんじゃないか?」「これって……何?使えそうだけどどうやるんだ?」みたいなサービスがあるわけです。しかしそこはとりあえず、スタンダードに構築を進めていきました。 構築を進めるにあたり、 「あれ、ELBのSSL証明書を発行する必要があるな」 「あれ、そうなるとCertificate Managerを使う必要があるな」 「あれ、そうなるとRoute53を……」 「あれ、そうなるとメールの送受信にSESを……」 とか、自分としては想定外のさ紆余曲折はありましたが、構成はざっくり次のような感じです。 EC2: Mastodon本体 ELB: ロードバランサー S3+CloudFront: 画像ファイル等の設置場所 RDS: PostgreSQLの利用 ElastiCache: Redisの利用 Certificate Manager: SSL証明書の発行 SES: 招待メール等の送信サーバー Route53: DNSサーバー とまぁ、結果的にはスタンダードな構成なんだとは思うのですが、これらの構成で構築することができました。   技術はおいかけ続ける必要がある エンジニアとしてはアタリマエなのですが、技術って本当に追いかけ続ける必要がありますね。AWSのサービスの大半ももはや理解していないものが多いですし。おそらく、今回の構成よりもよいものが構築できるのだと思います。例えば、Certificate Managerの存在は知っていたものの、今回使ってみてここまで便利なものだとは認識していませんでした。Certificate ManagerでSSL証明書を発行しておくだけで、ELBを構築するときに単に発行した証明書がプルダウンで選択するだけで利用することができたのです。(おそらく、エンジニアとしてはかなり時代遅れなことを言っているのだと思います。。。)   今回のところは、これが私の限界でした。拡張には配慮しているつもりですが、もしかしたら今の構成だと問題が発生することもありえるかと思います。またもう一歩、勉強しておいて問題が発生したら構成を見直せるようにしておく必要があるなぁと。   もっといろいろ勉強する必要があるなぁ。      

早起きは10万の得

一日ナーバス どうも、今朝、10万円の機会損失をしました、umentuです。今日は、フリーランスumentuの不幸とドジの一日を語りたいと思います。なんの得にもなりません。ただ、書きたかったのです。 経緯 要約します。 2:50頃 CrowdWorksで10万円ほどの急募の案件を発見!今日の午前中までにプログラムを完成してほしいとのこと。 3:00頃 スヤー 3:10頃 クライアント様から連絡が入る。 ・・・スヤー 4:30頃 クライアント様からの連絡を確認。急いで連絡入れる。 4:40頃 連絡来ない。もうだめかなー。 4:50頃 連絡来ない。もうだめかなー。 5:00頃 連絡こ・・・な・・・・・い・・・・・。・・・だ・・・め・・・なーーーー。スヤー。 7:00頃 クライアント様から連絡が入る。 8:00頃 スヤー。 9:00頃 クライアント様からの連絡を確認。他の方に依頼してしまったとのこと。がっくり。 というわけで、10万円の案件を逃してしまったわけです……。 逃した魚は大きい 取れたはずの案件がとれなかった、ということはフリーランスの方々にはよくあることと思います。クラウドソーシングで「このくらいの予算なら余裕で取れるだろう!」と意気込んでいたら、他の方に依頼されてしまったというようなことです。しかし、今回の場合は、それよりもピンポイントにご連絡をいただいたにもかかわらず、のがしてしまったわけです。それも午前中までで10万円という案件を。午前中から意気消沈でした。   しかし、14:00からSkypeで面談があります。気を落としてばかりはいられません。   時は過ぎ、13:50 さて、Skype面談まであと10分。PCの前でスタンバイし、Skypeに友達申請が来るのを待ちます。   待ちます。   ……待ちます。   …………待ちます。   ………………待ちます。   ………………………あれ、14:10?なぜこない?   何気なくMacの時計をクリックします。。5月25日…………そうか、明日か。ははっ。   というわけで、一日間違えていたわけです。スケジュール管理をきちんとしようと決め、Trello等を駆使し準備も怠らなかったにもかかわらず、昨日から日付を1日ずらして認識していたわけです。ははっ。   ふて寝しました。 そんな中にも幸運が 30分くらいふて寝したあとスマホを見ると、見知らぬ方からメッセージが。なんと、私の技術ブログをみて、興味を示して頂いたとのこと。それなりに長いおつきあいさせていただけそうで、気持ちが跳ね上がり、いつものカフェバーへ。おいしいアイスドリップをいただいているというわけです。 おちこんだりもしたけれど、私はげんきです。 他人の日記ほど読む価値のない文章はない、と自分では思っているため、今日の記事は本当に気まぐれな文章です。フリーランスを意識すると、本当にチャンスは転がっていることに気付かされます。今いるカフェバーでも、常連さんと一仕事できることになりそうですし。オンラインでもオフラインでも人と会うことって大事だなと思った次第です。        

ご挨拶

お初にお目にかかります。umentuと申します。 この度、フリーランスとして活動させていただくことになりました。   経歴としては、前職ではインフラエンジニア・サーバーエンジニアとしてサーバーの構築や保守をしつつ、PythonやPHPでWebツールの開発を行っておりました。また、CrowdWorks や Lancers でもお仕事を頂戴して、同様のお仕事を行っておりました。 また機会に恵まれ、数度、技術評論社様で出版されているSoftware Designでも執筆をさせていただいております。 http://gihyo.jp/magazine/SD/archive/2014/201407 http://gihyo.jp/book/2016/978-4-7741-7782-3 http://gihyo.jp/magazine/SD/archive/2017/201712   また、最近ひょんなことから、Sheside Jet Office という会社のCTOに就任致しました。 本当に様々な方々に支えられてきたと思っております。   本来であればこういうページは自己アピールの場かと思うのですが、本心を述べる場にさせていただきたいと思います。 これまでの経歴というか経験的にはそれほど悪い環境になかったと思います。ITのインフラ部分から開発部分まで様々な経験をさせていただいてきました。しかし、自分にはそれらの経験をフルに活用できなかったというのが自分自身の弱さであり、反省点であると考えています。そのことが発端で、現在、必要以上の自信喪失になっている現状です。なにか自分にできることはないか、ということを模索している日々です。   フリーランスになるにあたり、様々なことに挑戦したいと考えています。もちろんエンジニアとして技術的な知識を深めていくことはもちろん、それ以外の分野をも経験させていただき、エンジニアとしてお役に立てることがあれば喜んでお手伝いさせていただきたいと考えています。   こちらのサイトでは、日々経験したことをできる範囲で公開していき、御覧頂いた方々のきっかけとなればと考えております。   簡単なご挨拶ではありますが、今後とも宜しくお願い致します。    

:)