サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
tech.basicinc.jp
こんにちは、ベーシック CTO @zaru です。 ベーシック開発部では毎月月末の金曜日にTGIFと称して、 飲み会 + アナログゲームなイベント 技術 LT 大会を開催しています。2年ほど継続しているので、もう24回以上行ってると思いますが(もう数えてない)、今回はベーシックを退職したエンジニア3名をゲストで招いてLTしてもらいました。 実は今までも時々、退職した人にLTやってもらっていたんですが、Cybozu 辞めたエンジニア Meetup に触発されて、どうせならもっと外の話を聞きたい!ということで3名に声をかけさせていただきました。 唐突ですが、TGIFといえば寿司です。 話してもらったテーマ 退職者Yさん: 「僕の伝えたいこと」 タイトルだけだと全然伝わってきませんが、ベーシックを辞めて、フリーランスになり、その後ベンチャーに転職した時に、ベーシックで得た経験がどのように役に立っ
株式会社ベーシック CTO の@zaruです。こんにちは。2ヶ月ほど前に新米スクラムマスターがスクラムを導入してみたという記事を書きました。今回はこの2ヶ月間に行ったスクラム開発の改善や、それを他の部署に広めていっている話を書こうと思います。 スクラム開発の改善 スクラム開発を導入する時、スクラムやアジャイルの考え方に遵守する必要があると強く思っていました。というのもスクラム開発について調べていくと、いわゆるなんちゃってスクラムに対しての批判が多く目についたのと、郷に入りては郷に従えの考えでまずは倣ってみようと思ったからです。 実際にスプリントを数回やってみて今実感していることは 自律的なチーム ないしは自己組織化されたチームになっているのであれば、気軽にマイナーチェンジして自分たちに合ったやり方をやるのが良いと考えています。固執しすぎない。 自律的なチームになった時、スクラムマスターはた
先日エンジニアブログをリニューアルしました!!! カラフルだった旧ページに比べて、だいぶシンプルになりました。 旧ページ 新ページ なぜ作ったのかというのはブログ開発初日の様子を書いた、こちらのブログにあります。 自分たちのブログは自分たちで作るしかないのでハッカソンやった リニューアル後の一発目のブログでは、 なんのためにやるのか、とかどうやって作るかとか、どうして作ったのかとかとか、今回はそういう話は出てきません。 完全に僕の個人的な感想ブログ = エモいブログです。 ブログのいいところ 会社のブログのいいところって、書いている人の人柄とか個人的な思いとかが表現されているところだと思っています。 会社で何かしらのブログをやっている目的は「採用」に結びつけているところがほとんどですよね。 単純に情報を更新するだけであれば、ブログという体裁を取らずに採用ページとして作った方がある程度自由度
wordpressでサイトつくるとことが増えてきたしgitで管理しようと思って 「ついでにwordpress用の.gitignoreを考えよう」 と思ったら既にgithubにあがってた。そりゃそうか。 https://github.com/github/gitignore なのでこれを使うことにしようと思ったのですが、 何も考えずに使うのもあれなので、それぞれどういうものかを見ておきます。 ■ .htaccess 本番環境とテスト環境がURLが違う場合ほとんどなので、.htaccessはバージョン管理しません。 ■ wp-config.php データベース設定とか、環境依存の設定があるのでこれも当然外す。 ■ wp-content/uploads/ 管理画面から画像とかアップロードしたときの保存先ディレクトリ。 ■ wp-content/blogs.dir/ v3.5より前で、マルチサイト
仕事を続けていても いつも同じようなことばっかりしている 単純・簡単な作業が多い っていう感じで、成長を感じられないということありませんか? 僕はありました。 これはまさに「まるで成長していない...」 人にもよると思うのですが、成長を感じられないっていうは結構ストレスだと思うんですよね。 そこでそんな場合にどう行動をべきなのかを考えてみました。 エンジニアブログなのでプログラマー向けですが、考え方とかは他の職種でも役に立つのではと思います。 成長とは 株式会社ベーシックでは成長とは、どういう定義をしているかというと 「できることが増えること」 としてます。 つまりは、今までやったことがないことに触れていくことが成長につながると考えています。 エンジニアに置き換えると、この概念はすごくわかりやすく 新しい言語触ってみた awsの新しいサービス使ってみた lineのbot作ってみた など新し
ある程度エンジニアを続けていると、技術的負債に出会うことありますよね? むしろ1から新規でサービスを立ち上げる、ということをしない限りエンジニアは常に技術的負債との戦いです。 新規でサービス作りたいっていう人は多いと思いますが、それはやっぱり 「技術的負債が全くない状態で1からやってみたい」 ということでしょう。 確かに1からサービスをつくることは、そのエンジニアの技術力を遺憾なく発揮することができるだろうと思います。 でも最近思うことは技術的負債に出会ったときにどいういう行動がとれるか、ということがエンジニアとして技術力や成長に差が出てくる気がしてきました。 どうしようもないプログラムを前に、「なんじゃこりゃあぁぁ!!」と文句をいいつつも、しょうがないかと諦めて、同じ環境、同じ運用で、そのまま同じようにプログラムを追加し続けるか。 自分にどうにか改善できることはないかと、考えそれを実行に
みなさん日々楽しくプログラミングしてますかー? 楽しくプログラミングをするためには何が必要でしょうか? そもそも人によってどこが楽しいのかのポイントは違います。 アルゴリズムを考えるのが楽しい 設計をするのが楽しい 新しい技術を使えることが楽しい などなど、、、 僕はプログラミングが楽しいと思える状態でプログラミングをするには、プログラミングをする、という行為そのものよりも、プログラミングをするための環境が重要だと思っています。 そこで環境として重要な下記の項目から考えてみます。 事業 人 開発体制 システム 基本的にはWebサービスを開発する前提です。 事業からみた楽しいプログラミング いきなり少し大きめの話になってしまいますが、要はどんなサービスをつくるかという点です。 ECサイトなのか、メディアサイトなのか、コーポレートサイトなのか プログラミングに関わらないのですが、そのサービスそ
仕事は基本一人でできるものではないので、世の中の大抵の人はなにかしらの仕事を受けたり、お願いをしたりしているかと思います。 そしてその仕事をお願いする先として同じ部署の人だけでなく、他部署の人やアルバイトさん、さらには外部のパートナー企業へお願いをすることもあるでしょう。 その時にちゃんと チームの一員として目的を共有すること 、というのが大事なのではというお話です。 よいチームとは 突然ですが、よいチームとはどういうチームでしょう? リーダーがメンバーときちんとコミニュケーションを取る やったことに対するフィードバックをきちんとする ある程度の方向性をしめして、なるべくメンバーの自主性にまかせる 等々... よいチームをつくるためのノウハウとして、チーミングやチームマネジメントという言葉があり、検索すればいろいろな記事がでてきますし、様々な書籍でもかたられています。 僕も先日とある記事を
初投稿になります。開発部の柿崎昭一です。 今後、こちらのブログに不定期で現れるので宜しくお願い致します! ベーシックの開発部(エンジニアが所属する事業部)は各事業部にエンジニアを配属し、業務にあたっているのですが、 「各事業部でどんな事をやっているのかわからない」 「最近異動したけどまだキャッチアップできていない」 等の問題がありました。 そんな問題を解決しようと今回新しい取り組みが発足しました…。 その名も 「TGIF LT」 TGIFとは、「Thank God, It's Friday.」(ありがとう神様、今日は金曜日だ)という意味で、 毎月末の金曜日にお酒を飲みながら登壇者が「最近の業務内容」「気づき・発見」「相談」を発表(LT)し、開発部メンバーに共有、解決するというものです。 今回は記念すべき第一回TGIF LTを開催したのでその内容をご報告しますね!! 第一回TGIF LTに登
) 4月1日に10年続くとあるWebサービスをフルリニューアルしました。 リニューアルの目的は、システムが度重なる機能拡張により、必要以上に複雑化してしまい、ちょっとした修正でも非常に時間がかかるので今後、事業のスケールを拡大していく上のが難しくなってきたためです。 特に大きなところですと、スマホサイトがリニューアル前のサイトだと、スマホとPCで機能が完全に分断されてしまっていました。サイトを立ち上げた当初はスマートフォンすらなかった時代なのでしょうがないとは思いますが、これをこれ以上保守していくのはしんどいので、スマホファーストの思想を取り入れサイトを設計していきました。 技術的にも、PHPからRubyに変更して、ELBやS3をとりいれ、Githubベースの運用に変更することで、時代の流れに取り残されていたWebサイトを今風な感じの仕組みへと変更しました。 リニューアル自体はプロジェクト
理想のエンジニアチームについてチームで話し合ってみた ちょっと遅いですが、明けましておめでとうございます。 2015年が始まりました。 去年から新卒のエンジニアも採用するようになり、徐々に開発部(ベーシックでのエンジニアがいる部署名)のメンバーは増えてきているのですが、メンバーそれぞれはやっていることが結構違うので、去年は普段の業務の中ではほぼ関わり合いがなく、横のつながりを作る事があまりできませんでした。 これからさらにエンジニアが増えていく中、このままの状態で人が増えてもチームとして力が発揮できないし、メンバーそれぞれの状況は全然変わらないっていうことになりかねないので、今年はもう少しチーム感をだしていきたいと思っています。 そんな思いもありまして、年始に開発部メンバーでオフサイトミーティングをしました。 オフサイトミーティングといっても、どこかの会議室を借りてやるといったそんなに大げ
Selenium2とPHPUnitでMac/Winブラウザ自動テストSelenium2とは ものすごいややこしいんだけど、SeleniumってSelenium◯◯っていうのが沢山あるよね…いったいどれが何なの?っていう迷子状態になって使うに至らない。そんな人、多いと思います。いや俺だけかも。そんな疑問に答えてくれる素晴らしいエントリー。 Selenium何とかっていうツールがやたら色々あるのはどういうわけなのか | 品質向上ブログ 非常に助かります。要は巷で噂のSelenium2っていうのは、Selenium WebDriverの事。これさえ分かっていれば迷子にならない。と思う。 いきなりまとめ Macで開発して、PHPUnitでSeleniumのテストコードを書いて、MacブラウザとVirtualBox経由仮想Windowsブラウザに対してテストを実行する。それだけ。 必要なソフトは「P
CakePHPのPaginateでjoinしたモデルのカラムでソートする方法CakePHPのPaginate便利ですよね。特に設定しなくても、ソートもページングもできる。素晴らしい。ただ、joinしているモデルのカラムをキーにソートしようとすると効かないという…。どうしよう。 答え→バーチャルフィールドを設定する 解決方法は簡単で、ソートしたいカラムをバーチャルフィールドとして登録するだけです。 model.php <?php class Hoge extends AppModel { var $virtualFields = array( ‘hoge’ => ‘JoinTable.hoge’ ); view.ctp <?php echo $this->Hoge->sort(‘hoge’,’ソートキー’); ?> ただし、ソートのためだけにバーチャルフィールドを設定するとfindした時にう
HTMLをPDFに上手いこと変換してくれるwkhtmltopdfを日本語で使う ここで紹介したようにHTMLをPDFに変換するベストな選択肢はwkhtmltopdfですよと。そんでもって、それをCakePHPのViewに使いたいというわけで、便利なプラグインが会ったので紹介。 その名もceeram/CakePdf。使い方も簡単。いくつかのPDFエンジンに対応している。 対応PDFエンジン DomPdf Mpdf Tcpdf WkHtmlToPdf もちろんオススメはWkHtmlToPdf。ただし、ライセンスの問題か、WkHtmlToPdfは内包していないので、別途手に入れる必要がある。まぁ、大した問題ではない。 逆に、DomPdfなどは最初からあるけど、使わないなら削除しちゃってもいいかも。ファイルサイズ大きいから。 URLに「.pdf」と付けるだけで、ViewをPDFにしてくれる つまり
今回、個人的にXcode5 + StoryBoardな環境でiOSアプリを作ってみたので、その時、つまずいたポイントやメリット・デメリットなどをまとめてみました。結論から言うと、StoryBoardは使える!代わりに、慣れるまでは苦行。(今までUIKitをコードで実装していた人は特に) 正直、GUIツールなどを使ってのアプリ構築には苦手意識があって(プログラマなら、コードで全部書けよ的な変な意識)、StoryBoardはおろか、InterfaceBuilderは完全に避けてました。 ただそうは言っても、一度は本気で取り組まないと文句も言いにくいし。UnityみたいにGUI実装前提も出てきているので、やっておこうかなと。 StoryBoardつまずきポイント それどこで設定するの? 例えば、UINavigationBarの色ってどこで変えるの?っていう超初歩的なもので、つまずいたりしました。
ベーシックでRubyのプロジェクトがあったので、RubyといったらRuby On Railsでしょう、ということで環境を構築しました。 サーバ:AmazonEC2 DB:MySQL Webサーバ:Apache フレームワーク:Ruby On Rails こんな構成です。 Rubyのインストール まずはRubyをインストールしないと話になりません。 $ sudo yum install ruby でもいいのですが、、、 せっかくなので最新のRubyをインストールしたい、ということで 「rbenv+ruby-buid」 を使ってインストールをします。 rbenvのインストール rbenvとは、、、 rbenvはRubyの複数バーションを管理するためのものです。 rbenv自体にはRubyのインストールをサポートしていないのですが、後述するruby-buildプラグインを使うことでRubyのイン
Macの開発環境を色々と作る実験のためにMaxOSXの中に仮想環境でMacOSXが欲しい…と思っていたら、なんとそれをVirutalBoxでうまいことやってくれるスクリプトを作っている天使みたいな人がいました。 iESD OSX on OSX どうやら以前はShellScriptでやっていたらしいが、かなり煩雑になったのでRubyGemに移行したっぽい。一応、ShellScript版でもできた。 というわけで、MaxOSX 10.9(Mavericks)環境のVirtualBoxにMavericksを入れてみます。 AppStoreからMavericksをダウンロード すでにMavericksな人の場合、再度AppStoreからMavericksをダウンロードしておきます。無事、ダウンロードが終わると、下記パスにAPPファイルが配置されているはず。 % ls /Applications/I
新卒エンジニア向け:Macにインストールすべきアプリ達2014年新卒エンジニア向けに、最初から知っておくと便利になるであろうアプリなどを紹介する機会があったので、ついでにブログ記事としてまとめておく。Boxenとかもあるけど、正直手軽さにかける印象なので、普通にHomeBrewと手作業。 下記で説明しているHomeBrew Caskを使えば、ほぼ一発で必要なアプリケーションが手に入るのでオススメ。 正直、iOS/Androidエンジニア向けのものは、あんまりない…。すまそん。 前提 Mac OSX 10.9〜(多少、古くても出来ると思うけど) Webエンジニア(PHPメイン)/iOS,Androidエンジニア対象 なにがなんでも最初に入れるべきアプリ Xcode HomeBrew HomeBrewを通じてインストールすべきもの Brew Cask zsh vim jq | JSONパーサー
2014年新卒エンジニア向けに、最初から知っておくと便利になるであろうアプリなどを紹介する機会があったので、ついでにブログ記事としてまとめておく。Boxenとかもあるけど、正直手軽さにかける印象なので、普通にHomeBrewと手作業。 下記で説明しているHomeBrew Caskを使えば、ほぼ一発で必要なアプリケーションが手に入るのでオススメ。 正直、iOS/Androidエンジニア向けのものは、あんまりない…。すまそん。 前提 Mac OSX 10.9〜(多少、古くても出来ると思うけど) Webエンジニア(PHPメイン)/iOS,Androidエンジニア対象 なにがなんでも最初に入れるべきアプリ Xcode HomeBrew HomeBrewを通じてインストールすべきもの Brew Cask zsh vim jq | JSONパーサー curl wget dnsmasq | DNS co
AWS RDSをMuninでリソース監視する - Muninプラグインの作り方 RDS特有のCPUリソースとかコネクション数とかをCloudWatchで監視する方法は以前まとめたのだけど、そういえばMySQL標準で用意してくれているmuninプラグインの導入については書いてなかったと思い、忘れないようにまとめ。 MySQL Develをインストール yum install mysql-devel プラグインの配置 ln -s /usr/share/munin/plugins/mysql_ /etc/munin/plugins/mysql_commands ln -s /usr/share/munin/plugins/mysql_ /etc/munin/plugins/mysql_innodb_bpool ln -s /usr/share/munin/plugins/mysql_ /etc/
次のページ
このページを最初にブックマークしてみませんか?
『Basicinc Enjoy Hacking!』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く