サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
2024年ランキング
www.mof-mof.co.jp
こんにちは。出口です。 今回は、mofmofで毎週開催している「テックトーク」という取り組みについてです。 エンジニアが気になっている技術的なトピックについて気軽に話し合える場として、大切にしている取り組みの1つです。 コロナ禍以前はオンサイトで実施していましたが、コロナ禍以降フルリモートになってからはオンラインで開催しています。 mofmof式テックトークとは? なぜテックトークを始めたのか mofmof式テックトークの特徴的な運営方式 柔軟な参加形態 聞き専での参加もOK 実況スレッドを活用して後から内容が分かる仕組み テーマ設定の工夫 毎月のネタ出し会で、みんなで話したい内容を決める 定期的なテーマを決めない雑談会も実施 深い話題については別途、場を設ける 運営負担を最小限に ファシリテーターは当日決定 テックトークBotを作成し、自動化 テックトークを通じて得られる価値 個人の成長
Biome v1.7からPrettierとESLintから移行するためのコマンドが追加されたので、既存のNext.jsプロジェクトで試しに移行コマンドを叩いてみました。 biomejs.dev Biomeのインストールと初期設定 ESLintからの移行コマンド Prettierからの移行コマンド package.jsonのscript変更 実行してみる Biomeのインストールと初期設定 Biomeをインストール。 > npm i --save-dev --save-exact @biomejs/biome@latest added 3 packages, removed 81 packages, and audited 891 packages in 5s 157 packages are looking for funding run `npm fund` for details 3
こんにちは。出口です。 mofmofでは開発生産性を改善する取り組みを2023年7月にスタートさせ、これまで数社の受託開発案件で導入を行ってきました。 改善の取り組みを通じて、デプロイ頻度、リードタイムが見える化され、さらに改善が進んだプロジェクトについては、アジャイルの文脈でいうところのベロシティが向上しています。 受託開発においても、開発生産性を改善することで一定の成果があることが分かったため、これまで社内の数人で行っていた改善活動を全社に展開することにしました。 この記事では、実際にやったこと、やってみて分かったこと、感想、ふりかえりの結果を共有したいと思います。 やったこと 開発生産性改善やっていく宣言 月1回のふりかえり わかったこと 一番重要なのは「意識」すること KEEP リードタイムを短くすることで開発がスムーズに進むことが体感できた PROBLEM リードタイムを短くする
こんにちは。出口です。 タイトルにある通り、技術ブログをはてなブログに移行しました。 この記事では、なぜ移行することになったのか、どうやって移行したのか、移行で苦労したところなどをまとめておきたいと思います。 もし脱セルフホストブログ、脱Contentfulや、はてなブログへの移行をお考えであれば参考になるのではないかと思います。 なぜ移行したのか Nuxt 3への移行が大変すぎる Contentfulへの不満が募ってきた 当初の計画 改めて移行を考える 移行について 記事移行 インポート機能を使ってWXRを取り込む場合 AtomPubを使ったパターンの場合 サブディレクトリオプション Netfilyのリバースプロキシ設定 robots.txtを設置 NetlifyのPrerenderingオプション設定 検証ツールで1つだけ検証失敗する まとめ なぜ移行したのか まずそもそもなぜ移行した
react-rails gemを使う方法 react-rails gemを使わない方法 TypeScriptを導入する 今回は、弊社メンバーが研修時に実装した課題のアウトプットがちょうど良かったので、そこに後からReactとTypeScriptを導入していきます。 この課題は、万葉さんが公開しているものを使っていて、シンプルなTODO管理アプリケーションです。 https://github.com/everyleaf/el-training 既に実装済みのものに乗せていくので、タスク一覧・詳細・編集画面があります。 react-rails gemを使う方法 react-railsはRailsで実装された、erbやslimなどのビューの中で、Reactコンポーネントを扱えるようにするgemです。 いわゆる、フロントとバックエンドを分離しSPAにするものではなく、画面の一部をリッチにするような
以前は純Railsで開発を行うことが多かったんですが、最近はgraphql-ruby + SPAを採用することも増えています。 フロントの表現力がやっぱり違いますね。最近はリッチな要望をいただくことも多く、うまいこと対応するには都合が良いです。あと作ってて楽しい。 というわけで、今回はRailsをGraphQLサーバにするgem、graphql-rubyを使ったCRUDを紹介しようと思います。 Dockerに乗せたサンプルアプリを用意したので、ぜひ活用してください。(かなり面倒な)環境構築をスキップすることができます。 基本的にサンプルのコード前提で話を進めますのでその点ご了承ください。 やること graphql-rubyを使った簡単なCRUD実装 やらないこと GraphQLとは?の説明や前提知識の解説 環境構築の解説 フロントの実装(リクエストはpostmanから投げます) サンプルア
用意した画像 やったこと 結果 MiniMagickを使って、画像を生成してみました。 用意した画像 ベース画像 ユーザー画像 フォントファイル やったこと アイコン画像を丸く切り抜く Convertメソッドを使い、既存画像を読み込み加工をして出力します。 # ユーザー画像を元に新しい画像を生成する # 円状に切り抜く # 新しい画像は `out_put.png` に出力される user_image = MiniMagick::Image.open({ユーザー画像パス}) MiniMagick::Tool::Convert.new do |img| img.size "#{user_image.height}x#{user_image.width}" img << 'xc:transparent' img.fill user_image.path img.draw 'translate 1
以前にhuggingface/trasformersで固有表現抽出する方法を試してましたが、日本語ではうまく動かせませんでした。今回は日本語の言語モデルの上にファインチューニングして固有表現抽出出来るところまでやってみます。 前回: huggingfaceのtransformersでNER(named entity recognition)を試してみる huggningface/transformersのexampleのファインチューニングのコードがちょっと複雑だったのでどうしようかと思っていたら、どうやらRasaも対応しているらしいので、Rasaの上で動かしてみようと思います。 以前にRasaをいじっていたときの記事一覧 まずはRasaで日本語の固有表現抽出出来るところまで(Spacyを利用) huggingface/transformersを使用する まとめ 2020/04/29追記
自然言語処理をするときはよくRasa NLUを使っているのですが、内部的にはspaCyが使われている模様です。どちらもパイプラインでモジュールをつなげていって自然言語処理をシンプルにするフレームワークだと理解しているのですが、spaCy単独で使うとどういう感じなのか把握したかったんで試してみます。 こちらのエントリを参考にspaCyの基本的な動きを確認。 https://qiita.com/moriyamanaoto/items/e98b8a6ff1c8fcf8e293 $ mkdir spacy-ner $ cd spacy-ner 必要なライブラリをインストール。GiNZAはspaCyフレームワークのっかった形で提供されている日本語の学習済みモデルを含むライブラリです。簡単にいえばspaCyを日本語で動かせるようにするものです。 $ pip install spacy $ pip in
インセプションデッキを書いてみよう。アジャイル開発でプロジェクトマネジメントの屋台骨となる厳選4項目 2019.08.16 こんにちは! mofmofで受託開発や新規事業の立ち上げをしている岩井です。現場のエンジニアが書くシリーズ、今回はアジャイルプロジェクトを進める上で非常に重要なインセプションデッキというものを紹介してみようかなと思います。 目次 インセプションデッキとは インセプションデッキの紹介 厳選4項目 我々はなぜここにいるのか エレベーターピッチ やらないことリスト トレードオフスライダー 実際のプロジェクトで活かすために アジャイルに関するおすすめ記事 インセプションデッキとは アジャイルの教科書と言っても過言ではない「アジャイルサムライ」という書籍で紹介されているスライド集です。以上。 というのはあまりにもざっくりしすぎているので、もう少し詳しく概要を紹介しようかなと思い
最近よく「NoCode」ってキーワードを耳にすることが多く、mofmof inc.では新規事業のプロダクト開発を専門としているので、プロトタイプ開発に使えるのではないかと気になっていた。 どの程度のものを作れるのか、実際にいじって試してみる。 NoCodeのSaaS ラーメンアプリを作ってみる 雑に仕様を定義 作ってみる 実機で動かしてみる まとめ NoCodeのSaaS NoCodeで開発出来るサービスは既にいくつか選択肢がある。主に海外製が多いみたい。 Glide https://www.glideapps.com/ Bubble https://bubble.io/ Adalo https://www.adalo.com/ ARCADIER - マーケットプレイスに特化したサービスぽい https://www.arcadier.com/ 今回はGoogleスプレッドシートをバックエン
mofmof inc.のエンジニア兼代表の原田です。 システム開発に関わったことがある方であれば、きっと「見積もり」の難しさについてはご存知のことと思います。業界全体でも多くの見積もり手法が生まれ、より効率的により正確に見積もれるようにしようと奮闘していることと思います。 今回は、いくつか存在する中の1つ、アジャイル開発で頻繁に用いられている「プランニングポーカー」という見積もり手法について紹介と解説をしていきます。 プランニングポーカーとは何か 簡単に箇条書きすると以下のような特徴があります。 一人ではなくチームで見積もる 相対見積もり 専用のカードを使用する なぜプランニングポーカーが良いのか ソフトウェアの納期見積もりは、星占いレベルのものであると思う 引用: ソフトウェアの納期見積もりは、星占いレベルのものであると思う - メソッド屋のブログ ぼくはこの言葉が好きで、よく社内研修の
photo by Josh Hallett Vue.jsのcomputed property(以下computedと表記)がどのように依存しているdataが更新されたときだけ再計算されるのかを調べてみました。 基本的なcomputed propertyの使い方 目的の異なるcomputedが複数あるとします 依存関係が違う場合は実行されない どのように実装しているのか Observer Watcher 仮説 1. computed を一度でも実行する前は、いくら data を変更しても再計算されない 2. computed を実行中に Dep.target を覗いてみると自分自身を内包した Watcher オブジェクトを確認できる 3. data 変更をしなくても dep.notify() を実行すれば computed が再計算される まとめ 基本的なcomputed propertyの
オウンドメディアでも立ち上げたいなと思いまして、今だとCMS何がイケてるのかなーと調べてたらContentfulがイケてるのではと思ったので試してみます。 Contentfulは最近トレンドのheadless CMSというカテゴリのCMSで、コンテンツ管理画面はあるけど、コンテンツを表示する部分は含まれていなくて、APIでコンテンツデータを公開するもの。 フロントの自由度が高く、アプリにも使えるし、WEBにも使えるし、スマートにコンテンツ配信出来るわけ。逆に言うとWordpressのような従来のCMSに比べると、自分で表示部分を作り込まなければならないので大変手間がかかるのがデメリット。 Contentfulは無料プランで5,000レコードまでコンテンツを保存出来る模様。下記エントリでのざっくりとした目安では800記事くらいは書けるみたい。ありがた過ぎるやろ。 Contentful 料金
前回はGoogleのCloud AutoML Visionを使って、イチゴとリンゴを分類するモデルを構築した(精度は著しくポンコツだったけど)。 機械学習の知識なしでカスタムモデルが作れる画像分類API、Google Cloud AutoML Visionでリンゴとイチゴを分類してみる なぜCloud VisionではなくAutoML Visionなのか? トレーニングする 分類してみる まとめ なぜCloud VisionではなくAutoML Visionなのか? そういえば根本的な話をしていなかった。 GoogleにはCloud Vision APIっていう画像分類APIがある。基本的な画像分類はそれで十分なんだけど、実際に画像分類をソリューションとして利用したいシーンって、一般的なものの分類だけでは実現できなかったりする。 例) きゅうり農家の事例 https://persol-te
MVPとは MVPとはMinimum Viable Productの略です。書籍「リーン・スタートアップ」では「実用最小限の製品」と訳され、価値を実現する最も小さい製品のことを指します。 従来の新規事業で製品開発のプロセスは以下のような流れが一般的です。 企画書・プロトタイプをつくる 社内でフィードバックを得て改善する OK/NGの投資判断をする 正式に製品開発し、市場に売り出す 対してリーンスタートアップでは、以下のようなサイクルを高速に繰り返すことが特徴です。 限りなく小さく、単純な機能しかない製品(MVP)を開発する 想定している顧客に使ってもらいフィードバックを得る 解決したい課題(CPF)・製品の形(PSM)・市場でのニーズ(PMF)の全てが正しいことを検証する 本格的に製品開発し、市場に売り出す リーンスタートアップでは、「学習すること」に重点が置かれています。検証により正しく
こんにちは。エンジニアと弊社代表原田の対談企画をお届けいたします。 今回はお話して下さったのは、esa LLCに所属されつつ、株式会社キッズスターの技術顧問を務める越川 直人さん。 エンジニアリング以外にも様々な経験をお持ちなのですが、それらを経験された経緯や感じたこと、エンジニアがエンジニアリング以外で伸ばしていくべき分野等について語って下さいました。 多くのエンジニアが必要とされている現在、イケてるエンジニアになる為のヒントをお伝えしていきます。 本日はありがとうございます。早速ですが、越川さんはエンジニア以外にも様々なご経験があると伺いました。越川さんのご経歴から教えていただけますか? 越川) 大学生になる前にですね、1年間貯めたバイト代で、初めてのパソコンとしてWindows機とMacの違いも分からずに当時出たばかりのiMac(Rev.B)を買ったんです。 それでインターネットに出
前回、Amazon Echo Alexaのカスタムスキルを作る入門をやってみました。今回は少しコードやインテントをいじってカスタマイズして、Alexaちゃんにゴミ出しの曜日を教えてもらうスキルを開発してみます。 【Amazon Echo入門】Alexaちゃんに今日履いているパンツの色を答えさせる ぼくはNode.jsよりPythonの方がいくらか得意なので、LambdaのPython3.6で開発してみます。 Lambdaの開発 Alexa Skill側の設定 まとめ Lambdaの開発 AWSのLabmdaダッシュボード画面から「Create Function」します。 Blueprintsからalexaで検索したが、Python3.6のものがなかった。仕方ないので今回もAuthor from scratchで実装します。 前回はどうもAlexaとやりとりするための規定のリクエストとレスポ
いよいよAmazon Echo日本語対応版の発売が今日2017/11/09に発表されました!!実際の発売は来週以降になるようで、今日買う気満々だったのですが、もうちょい待たねばならぬ。 Google Homeを見送ってEcho一択勝負だったので待ち遠しい。 ところで、EchoのAlexaは既に開発者向けに日本語対応のコンソールが公開されており、Alexa用のSkillが開発出来るようになってます。ただ発売を待っているだけもアレなので、先にスキル作ってみます。 Alexaちゃんに今はいているパンツの色を聞いたら、何色か答えてくれるスキルを作る。 このあたりの公式情報を参考に進めていきます。またしてもクラスメソッドさんか。 https://developer.amazon.com/ja/alexa-skills-kit/training/building-a-skill Amazon Deve
機械学習をやっていると、実際に何か使えるものをサクっと作りたくなってくるんですが、膨大なデータが必要だったり、実装ボリュームが大きくなりすぎたりするんですが、テキスト解析ならちょうど良いノリで出来そう。 そこで、TwitterのツイートをSVMにかけてネガポジ判定するコードを書いてみたいと思います。今回はひとまず、ツイートをinputとして素性抽出してベクトル化するところまでやってみます。 こちらの記事に大変お世話になった。コードはかなりコピペさせていただいた。 https://datumstudio.jp/backstage/662 素性抽出とは 実装 素性抽出とは 実装に入る前に「素性抽出」について理解を確認したい。 通常、機械学習にかけるとき、当然学習のためのデータを流し込む必要があるわけなのですが、一般的には機械が理解できる形式として数値に置き換える必要があります。テキストはそのま
mofmofでRailsエンジニアをしている山形です。 好きな領域はフロントエンドで、もともとWebデザインをやっていたバックグラウンドを活かしてUIデザインを含めた開発をやっていたりします。 さて本日(US時間2017.4.27)Railsの新しいバージョン5.1.0がリリースされました。 Phoenixで行われているRailsConfに合わせて公開されたようです。 Rails 5.1: Loving JavaScript, System Tests, Encrypted Secrets, and more 主な新機能としては Loving JavaScript System tests Encrypted secrets Parameterized mailers Direct & resolved routes Unify form_tag/form_for with form_wi
最近Rebuild.fmで聞いた情報で、RubyからPythonを呼べるライブラリの開発が進んでいるらしいという話を聞いた。 まさにRails側からPythonを呼び出すところのコードがちょっとだるいなーと思っている最中だったので、使わない手はない!ということで試してみた。 こちらに開発者のむらけんさんのエントリがあるので参照されたし。 http://tech.speee.jp/entry/2017/03/13/113720 まだ実用段階ではないとスライドには書いてありますが、実用段階になるように貢献したいところ。 まずは準備 ロジスティック回帰を実装してみる 感想 まずは準備 alpha版のタグも切られてましたが、ひとまずよく考えずそのままmasterで動かしてみる。 $ git clone [email protected]:mrkn/pycall.git $ cd pycall $ bun
TensorFlowでseq2seqを試してみたりしているのですが、やはりローカルPCのCPUでディープラーニングはつらすぎるということがよくわかったのですが、とりあえずさくっとAWSのGPUインスタンスで対応できないかと思ったので、やってみます。 けっこう色んな人が取り組んでいて情報はそこそこあるのですが、結果的に普通のUbuntuでやってうまくいきました。 EC2インスタンスを立ち上げる セットアップ Cuda ToolkitとcuDNNのセットアップ TensorFlowのチュートリアル「Deep MNIST for Experts」を実行する 実は失敗していた 追記 EC2インスタンスを立ち上げる スポットインスタンスの方が相当安いのですが、セットアップの手間がそこそこあるので、普通のインスタンスにして、学習させてないときは寝かせておく運用にしようと思います。 AWSのEC2の「L
デブサミ2016でDataRobotのセッションをみて感激したのですが、そのときにTensorFlowのデモもちょっとだけやっていて、試したくなりました。ぼくはRubyistなのでPythonをあまり書いたことがないのですがチャンレンジしてみます。 TensorFlowをインストール チュートリアル 実装 トレーニングの実装 評価させる まとめ TensorFlowをインストール このあたりを参考にしました。 https://www.tensorflow.org/versions/master/get_started/os_setup.html#pip_install http://www.pxt.jp/ja/diary/article/299_tensorflow_getting_started/ pipが入っている前提で進めます。 ぼくの環境ではこれだけでインストール出来たみたい。 $
SimpleCovでカバレッジを計測する werckerで動かして一定カバレッジ率以下でfailedにする まとめ SimpleCovでカバレッジを計測する 既にRailsプロジェクトがあって、rspecが実行出来る状態を前提とします。 簡単にカバレッジの計測が出来るSimpleCovというgemを使います。たった2行追記すればカバレッジを計測出来るというすぐれもの。 使い方はREADME参照。 https://github.com/colszowka/simplecov Gemfileに追記 gem 'simplecov', :require => false, :group => :test spec_helperに記述 require 'simplecov' SimpleCov.start 'rails' SimpleCov.minimum_coverage 90 RSpec.con
Octaveは数値解析を目的にしたプログラミング言語で、機械学習のコードを実装するときの試作としてよく使われるらしい。RとかJavaとかPythoonとかが機械学習で使われることが多いけども、試作レベルならOctaveが手っ取り早いっぽい。 インストールにちょっとだけつまいづいたのでメモがてら書いておきます。 OctaveをHomebrewでインストールする。 OctaveをHomebrewでインストールする。 Courseraの解説にはdmgをダウンロードしてインストールしろって書いてあるけど華麗に無視して、Homebrewでインストールします。依存ライブラリが結構あるっぽくてかなり時間がかかりますが根気強く待ちます。 $ brew tap homebrew/science $ brew install octave インストールが完了したらCourseraの動画の通り色々試してみるので
アプリの内部を理解しようとする時ってどうやってますか? 私の場合はDBの構成を調べてそれを手がかりにコードを追っていくのですが、案件参加の当初はschema.rbから紙とペンで構成図を書いてました。 前職ではDB構成表みたいな大量のドキュメントが管理され、何かを調べる際にそいつを開いてたので、普通のことだと思っていたのですが、、、 このgemを使えばrailsプロジェクトのER図を一瞬で出力してくれるようなので、無駄な時間と管理からお別れできそうですね。 Rails ERD 公式サイト 環境 やってみよう お試し用のモデルを作成 ER図を出力 感想 環境 Mac (Yosemite) ruby 2.2.2 rails 4.2.4 rbenv + bundler Homebrew やってみよう まずはgraphvizというグラフ描画ツールが必要らしいので、Homebrewにてインストールしま
個人の趣味で作っている、夫婦のための自動ごはん予定お知らせサービス「GoHaaan」のSSL証明書がいつの間に期限切れになっていて使えなくなってた。。。 GoHaaan https://gohaaan.com/ 最近無料SSLのLet's Encryptが話題になっているので試してみました。 Let's Encrypt実行 Let's Encrypt実行 まず設定したいサーバにsshログインします。今回はCentOS6+Nginxでやってます。 このあたりの記事を参考にさせていただいた。 http://letsencrypt.readthedocs.org/en/latest/using.html#installation http://qiita.com/dseg/items/908c1b8aab19a5b26d92 インストールする。 git clone https://github.
前回のエントリで線形回帰で実際に予測することまで出来たので、今回はロジスティック回帰で予測してみます。 機械学習で、ラーメン屋のレビュー件数から評価点がどれくらいになるか予測する 今回は、賃貸情報サイトのSUUMOで、「渋谷駅」で検索した中から、ある程度バラけるようにピックアップして収集したデータを使い、賃貸家賃をインプットして、その家賃で借りれる物件がオートロックかつバストイレ別か予測してみます。 使用データ 最急降下法でθを求める 予測してみる 使用データ 1列目: 家賃(月額) 2列目: 築年数 3列目: オートロックかつバストイレ別であるかどうか ※ 築年数は収集したけど今回は使わなかった。 data.tsv 97500 13 1 30000 41 0 31000 47 0 37000 52 0 45000 42 0 72000 43 0 110000 2 1 136000 29
次のページ
このページを最初にブックマークしてみませんか?
『月額制受託開発の株式会社mofmof』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く