並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 606件

新着順 人気順

golangの検索結果361 - 400 件 / 606件

  • Addy Osmani インタビュー 〜 ツール編

    .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

      Addy Osmani インタビュー 〜 ツール編
    • Windows Subsystem for Linuxとは? そのインストールと使い方 - Build Insider

      Windows上のBashシェル入門【Windows 10 Fall Creators Update対応】(1) Windows Subsystem for Linuxとは? そのインストールと使い方 Fall Creators Updateで正式版として提供されることになった「Windows 10上で動作するLinuxサブシステム」によるBashシェルの基礎を理解・マスターすることをゴールとして、Windows Subsystem for Linux(WSL、旧称:Bash on Ubuntu on Windows)の概要から、インストール方法までを解説。また、よくある疑問をQ&A形式で短くまとめる。 連載 INDEX 次回 → “Windows Subsystem for Linux”(以下、WSL)は、2016年4月の発表当時から「WindowsにBashシェルが入る!」と大きな話題

        Windows Subsystem for Linuxとは? そのインストールと使い方 - Build Insider
      • モノレポの開発環境でDocker ComposeをやめてTaskfileを導入した話

        こんにちは、Sally社 CTO の @aitaro です。 マーダーミステリーアプリ「ウズ」とマダミス制作ツール「ウズスタジオ」、マダミス情報サイト「マダミス.jp」を開発しています。 はじめに この記事ではウズの開発当初から利用していた Docker Compose をやめることにした背景についてご紹介します。 Docker Compose は各マシンの開発環境での差異を吸収するというメリットがあり、多くの開発現場で導入されていますが、Docker Composeの抱えているデメリットを勘案して、最終的に一部を残して辞める決断をしました。 Docker Composeの特徴 Docker Composeは、複数のコンテナを定義し、管理するためのツールです。ウズの開発環境では、バックエンド、フロントエンド、データベースなどをそれぞれコンテナ化して、Composeで一括管理していました。こ

          モノレポの開発環境でDocker ComposeをやめてTaskfileを導入した話
        • Big Sky :: golang の sort インタフェース難しい問題が解決した

          golang では配列をソートしたい場合に癖があり、Int や Float64、String といった固定の型であれば sort パッケージが提供する関数でソートが可能でしたが、独自の型や Int64 等といった sort パッケージが用意していない型の配列をソートするには Sorter というインタフェースを備えた型で扱うしかありませんでした。 package main import ( "fmt" "sort" ) type Food struct { Name  string Price int } type Foods []Food func (f Foods) Len() int { return len(f) } func (f Foods) Less(i, j int) bool { return f[i].Price < f[j].Price } func (f Foods

            Big Sky :: golang の sort インタフェース難しい問題が解決した
          • Go の channel 処理パターン集 | Hori Blog

            Hori Blogフリーランスでバックエンドエンジニアとして活動している Ryota Hori のブログです。 最近はテック系記事より雑記ブログ気味。 この記事は Go Advent Calendar 2017 の 1 日目の記事です。 Go の長所に goroutine による非同期処理がありますが、どうしても channel の取り回しで黒魔術化しがちです。少しでも闇を減らしていきたいので、 channel らへんの取り回しについてパターンをまとめました。チートシート的に使えれば嬉しいです。 Go の channel の基礎 入門資料として使いたいので、本題に入る前にざっくり基礎を。 定義のパターン channel には capacity という概念があります。 capacity は channel 内でバッファリングしておける容量のことで、 capacity に空きが無い場合は送信側

              Go の channel 処理パターン集 | Hori Blog
            • Big Sky :: golang の sync パッケージの使い方

              golang と言えば非同期に特化した言語ですが、慣れない内は簡単な非同期しか使えません。しかし sync パッケージを知る事でもっとカジュアルに、かつ確実な非同期処理を行う事が出来る様になります。 今日はそんな sync パッケージについて説明してみたいと思います。 sync.Mutex ご存じ sync.Mutex です。皆さんが一番使う排他制御だと思います。 package main import ( "fmt" "runtime" "sync" "time" ) func parallel(wg *sync.WaitGroup) { fmt.Println("博") time.Sleep(100 * time.Millisecond) fmt.Println("多") time.Sleep(100 * time.Millisecond) fmt.Println("の") time.

                Big Sky :: golang の sync パッケージの使い方
              • Goで書くテスタブルなCLIツールの作り方 | gihyo.jp

                CLIツールをテストする難しさ ターミナルなどで動作するCLI(コマンドラインインタフェース)ツールは、パッケージを公開して利用してもらうライブラリと比べてテストがしにくいと感じる読者も多いでしょう。 CLIツールは、ファイル/標準入力からの入力や、ファイル/標準出力/標準エラー出力への出力があることが多いです。また、コマンドライン引数やオプション(フラグ)によって変わる挙動のパターンが多いため、網羅的なテストが大変です。 入出力についても単一のファイルを読み書きするだけではなく、ディレクトリごと作成したり、特定のディレクトリ以下を再帰的に読み込むような処理もよくあります。 main関数にすべての処理をすべて書くような作りのCLIツールだと、実際にビルドしてテストスクリプトなどから動かしてテストするしかありません。しかし、せっかくCLIツールをGoで書いているのであれば、テストもGoで書き

                  Goで書くテスタブルなCLIツールの作り方 | gihyo.jp
                • 1万台のサーバを監視できると話題のPrometheusをGrafanaと組み合わせて導入した話 | Nagisaのすゝめ

                  はじめに 初めまして、下記の記事にて紹介がありました インフラエンジニアの榎戸です。 golangを使って開発したWebAPIを1年半運用して改善してきたことー月間20億PVのマンガサービス開発の裏側 場数を踏んできたのかは分かりませんが 笑 23歳エンジニア歴は2年と浅めです。 まだまだ未熟なエンジニアですが 今回はPrometheus + Grafana について紹介させて頂きます。 内容については下記となります。 Prometheus導入の経緯 Prometheus概要 Prometheusでの監視構成 次回お知らせ それでは始めていきます。 Prometheus導入の経緯 まずPrometheusを導入した経緯について少しだけ触れたいと思います。 弊社では月間20億PVのマンガサービスやそれと並行して走っているマンガサービス、また動画配信サービスや、アプリゲームの配信なども行なって

                    1万台のサーバを監視できると話題のPrometheusをGrafanaと組み合わせて導入した話 | Nagisaのすゝめ
                  • Go言語でGraceful Restartをする

                    とあるHTTPサーバをGolangで立てようって話になったんだけど、 止まると困るので無停止でサーバ再起動をしたい。 PerlにはServer::Starterという有名モジュールがあるんだけど、 Golangはどうなってるの?ってことで調べてみました。 2017-01-22追記: Go1.8以降でGraceful Shutdownがbuild-inになるので、この記事で紹介したライブラリは不要となりました。 詳しくはGo1.8のGraceful Shutdownとgo-gracedownの対応を参照。 gracefulじゃないバージョン Golangの標準ライブラリを使ってHTTPサーバを立ててみる例。 レスポンスが一瞬で終わってしまうとよくわからないので、sleepするhandlerを追加しておきます。 package main import ( "fmt" "log" "net/ht

                    • 並行処理の基礎を学ぼう - Enablement Workshop for Gophers

                      はじめに 2023年5月10日に開催されたEnablement Workshop for Gophersで「並行処理の基礎を学ぼう」というタイトルで講義を行ないました。 Enablement Workshop for Gophersは、ナレッジワークが学生向けに提供する手を動かしながら基礎を学ぶ"Enablement"の機会です。 今回のテーマは2023年6月21日〜23日に行われるEnablement Internship for Gophersに合わせて『並行処理』です。 具体的には主に以下のような並行処理の基礎や最近または今後のアップデートについてお話しました。 ゴールーチンとチャネル syncパッケージ コンテキスト 講義の様子はYouTubeで公開されています。 ゴールーチンとチャネル Goの有名な特徴の1つとしてゴールーチンとチャネルを用いた並行処理があります。 講義では、ゴー

                        並行処理の基礎を学ぼう - Enablement Workshop for Gophers
                      • Go言語で書いた Web アプリケーションの習作をサービス化して公開するところまでやってみた - えいのうにっき

                        もともと数ヶ月前から、Go言語によるWebアプリケーション開発 を読みながら Go での Webアプリケーション開発の勉強をしていた。 Go言語によるWebアプリケーション開発 作者: Mat Ryer,鵜飼文敏,牧野聡出版社/メーカー: オライリージャパン発売日: 2016/01/22メディア: 大型本この商品を含むブログ (3件) を見る 「実際に動くもの」を、「手を動かして作りながら学ぶ」のが僕は好きで、今回も同様、それを楽しんでやっていたのだけど、思いの外それっぽいものができあがってしまって。これをそのままローカルで動かすだけじゃおもしろくないな、もったいないな、と思ったので、それをサービス化して公開するところまでやってみた。 かんじんのアプリケーションは↓これ。Yukizuri と書いて「ゆきずり」と読む。 https://yukizuri.moshimo.worksyukizu

                          Go言語で書いた Web アプリケーションの習作をサービス化して公開するところまでやってみた - えいのうにっき
                        • 私のプログラミングの始め方 : Go | Yakst

                          プログラミング言語の最初の1歩を解説するサイト「How I Start」から、Peter Bourgon氏によるGo言語(golang)の始め方について。Goのシンプルさと標準ライブラリの使いやすさに焦点を当てた、分かりやすい解説。 Goは、信頼に値するスマートな人達によってデザインされ、大規模かつ成長を続けるオープンソースコミュニティによって継続的に改善されている、愛すべき小さなプログラミング言語である。 Goはシンプルであることを標榜しているが、時にはそのしきたりが少々分かりにくくなる時もある。ここでは、私がGoのプロジェクトをどのように始めたか、そしてどのようにGoの慣習に従うようになったかをお見せしようと思う。Webサービスのバックエンドを構築してみよう。 環境設定 もちろん、最初のステップはGoのインストールだ。オフィシャルサイトで、使用しているOSのバイナリディストリビューショ

                            私のプログラミングの始め方 : Go | Yakst
                          • GolangでFlame Graphを描く

                            アプリケーションのパフォーマンス問題の解決やチューニングで大切なのは問題のコアやボトルネックに最短パスで到達することである. 基本的なパフォーマンス分析の入り口はアプリケーションのスレッドがon-CPUで時間を消費しているかoff-CPUで時間を消費しているかを理解するところから始まる.on-CPUの場合はそれがuserモードかkernelモードかを特定し,さらにCPUプロファイリングによってどのcode pathがCPUを消費しているのかの分析に向かう.off-CPUの場合はI/OやLock,pagingといった問題の分析に向かう. Flame Graphはon-CPUでのパフォーマンスの問題が発覚した時に行うCPUプロファイリングを助ける.どのcode pathがボトルネックになっているのかを1つのグラフ上で理解できる.本記事ではFlame Graphとは何か? なぜ必要なのか? を解

                            • Big Sky :: golang でパフォーマンスチューニングする際に気を付けるべきこと

                              golang のテストツールには標準でベンチマークツールが付属しています。例えば、引数 n を貰ってその数分だけメッセージの入ったスライスを返す関数 makeSlice が以下の実装だったとします。 foo.go package foo import "fmt" func makeSlice(n int) []string { var r []string for i := 0; i < n; i++ { r = append(r, fmt.Sprintf("%03d だよーん", i)) } return r } 如何にも遅そうなコードですね。まずはこのコードを単品で計測するベンチマークを書きます。 foo_test.go package foo import "testing" func BenchmarkMakeSlice(b *testing.B) { b.ResetTimer()

                                Big Sky :: golang でパフォーマンスチューニングする際に気を付けるべきこと
                              • gRPC-WEB がもたらす我々の生活への変化 - tokuhirom's blog

                                gRPC-WEB が GA となった。これが我々の生活にどのような変化をもたらすのかについて考える。 従来の gRPC の課題 gRPC は google が公開している RPC 方式であり、java, golang などの言語で利用可能になっている。 gRPC は protocol buffers over HTTP/2 を基本としているため、通信が multiplexing されるし、schema 定義がきっちりされるのでクライアント側とのコミュニケーションがしやすい。 一方、protocol buffers はbinary であるためにbinaryの取扱が苦手な Browser JavaScript からのアクセスが難しいという問題があった。 grpc-gateway grpc-gateway という実装があって、これを利用すれば Browser JavaScript からのアクセス

                                • ISUCON7で優勝しました - ken39arg’s blog

                                  まずは、素晴らしい問題と素晴らしい会場、素晴らしいインフラを提供してくれた運営に関わる皆様、本当にありがとうございました。 また、腰の重い僕を引っ張ってくれた会社の同僚の皆さんありがとう。 ISUCON7に同僚のmizkei とsuzukiとMSAで参加して優勝してきました。 勝因はこれです。 脳筋使うんで朝食はプロテインにしました #isucon— kensaku araga (@ken39arg) 2017年11月24日 というのは冗談ですが、初参加のため過去の大会のことはわかりませんが、今回の問題は僕たちのチーム編成にとってとにかく相性が良かったというのが大きかったです。 チーム編成や基本的な作戦については下記の予選のブログに書いていますが、今回の問題はインフラはほとんど関係なく、膨大かつ複雑なアプリをどうするかみたいな感じで、手数を打てる僕らに有利だったと思います。 ken39ar

                                    ISUCON7で優勝しました - ken39arg’s blog
                                  • Werckerの仕組み,独自のboxとstepのつくりかた

                                    Werckerの仕組み,独自のboxとstepのつくりかた WerckerはTravisCIやDrone.ioのようなCI-as-a-Serviceのひとつ.GitHubへのコードのPushをフックしてアプリケーションのテスト,ビルド,デプロイを行うことができる. Werckerは,TravisCIのように,レポジトリのルートにwercker.ymlを準備し,そこに記述された実行環境と実行コマンドをもとにテスト/ビルドを走らせる. Werckerには,その実行環境をbox,実行コマンド(の集合)をstepとして自作し,あらかじめWercker Directoryに登録しておくことで,様々なテストからそれらを呼び出して使うという仕組みがある.実際,Werkcerで標準とされているboxやstepも同様の仕組みで作成されている(wercker · GitHub). 今回,WerkcerでのGo

                                    • ソフトウェアと

                                      2013: はじめに 約5年前にソフトウェアエンジニアになりたくて前の会社を辞めた。当時3人の会社の4人目として入社。Web系のソフトウェアエンジニアの親しい友人はいない。その時からソフトウェアエンジニアコミュニティというものが存在していることは知ってたんだけど、どうしても好きになれくてその中に積極的に入っていこうという思いもあまりない。いわゆるスタートアップと呼ばれる会社だったけど、当時スタートアップ野郎には全く良い印象がなく、身内ノリがキモすぎてあまり関わりたくなかったので距離を取っていた。 会社で一日中設計してコードを書いて家に帰ってDjangoやfluent-agent-hydraやpaho-mqtt、気になったソフトウェアを写経して土日は自分が感じる不便を解決するOSSを書く。写経は脳を大きく動かさなくてもとにかく開始できるという一点において便利な練習で、その頃はよくやっていた。

                                      • AbemaTVにPrometheusというモニタリングシステムを導入した話

                                        この記事はCyberAgent Developers Advent Calendar 2016 24日目の記事です。23日目はdekatotoroさんの「Apple TV – tvOS入門」でした。 こんにちは、AbemaTVサーバサイドエンジニアのギアです。 去年は新卒のiOSエンジニアとして、「ReactiveCocoaとMVVMモデル」という記事を書きましたが、今年はサーバサイドに関することを書きます。 はじめに この前にAbemaTVはモニタリング・アラートのため、主にStackdriver, Bugsnag, StatusCakeというサービスを使っています。しかし、Stackdriverはデフォルトである程度のGCP (Google Cloud Platform) 上のリソースに対するメトリクスしかありません。各マイクサービス間の通信やサービスのカスタマイズメトリクスなどのアプ

                                          AbemaTVにPrometheusというモニタリングシステムを導入した話
                                        • Systems Performanceを読んだ

                                          Brendan Greggによる“Systems Performance: Enterprise and the Cloud”を読んだ. Linux(Solaris)のパフォーマンスの分野でBrendan Greggという名前を聞いたことがあるひとは多いと思う.名前を知らなくてもが書いているブログやカンファレンスでの発表資料を見かけたことはあると思う.また彼が開発したFlame Graphにお世話になってるひともいるのではないか(ref. GolangでFlame Graphを描く).とにかくパフォーマンスに関して常に先端にいるひとである. そんな彼がSystems(ここでいうSystemsとはCPUやメモリといったハードウェアとKernelやOSといったソフトウェアを指す)のパフォーマンスについて内部のアーキテクチャーを含め徹底的に解説したのが本書である.面白いに決まってる. 本書の根底

                                          • golangで書かれたSlack bot でエンジニアに話題提供しよう - はこべにっき ♨

                                            こんにちは、id:hakobe932 です。はてなエンジニアアドベントカレンダーの18日目として、はてな社内で導入をためしている話題提供Slack botの機能と実装について紹介します。昨日はid:astj による Herokuとwerckerによる継続的インテグレーション・自動デプロイでperlのwebアプリケーションを開発するでした。 #enginnerで技術交換 はてなではメインのチャットツールとしてSlackを活用しています。チームや職種などの単位のたくさんのチャンネルがあり、それぞれのチャンネルでコミュニケーションが行われているのですが、もっぱら技術的な議論を行っているのが #enginner というチャンネルです。#engineer では、チームをまたいだ技術的な相談のほか、新技術や勉強会の紹介など、技術に関わるさまざまな話題で情報交換しています。 もっと技術の話題でわいわいし

                                              golangで書かれたSlack bot でエンジニアに話題提供しよう - はこべにっき ♨
                                            • ヒカルのGo 資料 Webアプリケーションの作り方

                                              FINAL FANTASY Record Keeper用に作ったツールのGolang実装についていろいろ。

                                                ヒカルのGo 資料 Webアプリケーションの作り方
                                              • Go言語でWebAppの開発に必要なN個のこと - Qiita

                                                元ネタ あるプログラミング言語で実際にWebAppを開発できるようになるまで、何が必要だろうか。言語仕様の習得は終えているとしよう。おそらく、最低限以下のような知識が必要だと思われる。とりあえずGo言語について知っていることを書いた。 パッケージマネージャ 標準でついてるgoツールを使おう。必要なライブラリはリポジトリから、go getで取ってこよう。 http://golang.org/cmd/go/#hdr-Download_and_install_packages_and_dependencies アプリケーションサーバ 標準パッケージのnet/httpパッケージを使えばhttpサーバを動かすことができる。apacheやnginxで動かしたかったら、標準パッケージのnet/http/cgiパッケージやnet/http/fcgiパッケージを使えばいい。 http://golang.or

                                                  Go言語でWebAppの開発に必要なN個のこと - Qiita
                                                • 【お知らせ】ピクシブから飛び出て新しいチャレンジをします - pixiv inside [archive]

                                                  開発マネージャの bash0C7 です。 何かの比喩ではなくタイトルの通り、ピクシブから飛び出て新しいフィールドでのチャレンジに軸足を移す決断をしました。 広くお知らせしたい事柄があるため、このブログにてこれからのチャレンジについて書かせていただきます。*1 自己紹介 2013年秋に技術職として中途入社し、2014年以後は開発マネージャとして働いてきました。*2 キャッチフレーズは「古きよき時代から来ました、まじめなSE、まじめにSE」です。 P-1グランプリ2014で審査員を務めていただいた寺嶋由芙さんリスペクトです。 ピクシブでのエンジニア仕事としては、入社以来、広告技術担当としてピクシブにおけるアドテクノロジー領域を中心にコミットしてきました。大きな仕事としてはRubyとGolangによる広告配信システム開発があり、RubyWorld Conference2014などで事例と技術情報

                                                    【お知らせ】ピクシブから飛び出て新しいチャレンジをします - pixiv inside [archive]
                                                  • JSONをインタラクティブに掘り下げるコマンド jid - Qiita

                                                    はじめに 私はCLIを利用することが多いのもあり、 jq は今やJSONを利用する上は欠かせないツールとなっています。 ただ ・ jqのクエリを書くことなれるまで少し時間がかかる ・ クエリを書くことに慣れたとしても、初見だったりして 構造を把握していないJSONに関しては非常に手間 でみたいな感じだなと思っていました。 インタラクティブに jq のクエリを書いていければいいのに、と思ってツールを探しました(CLI限定で)が、あまり良さそうなものが見つかりませんでした。 そこで、Golangで何か作ってみたいのもあったので、作ったのが jid というツールです。 リポジトリ Github : simeji/jid インストール 以下からバイナリダウンロードしてzip解凍するだけです。 https://github.com/simeji/jid/releases Macの場合はbrewで入れ

                                                      JSONをインタラクティブに掘り下げるコマンド jid - Qiita
                                                    • kaggle初心者の私が3ヶ月でソロゴールドを獲得した方法 | リクルート

                                                      リクルートデータ組織のブログをはじめました。※最新情報はRecruit Data Blogをご覧ください。 Recruit Data Blogはこちら こんにちは。今年2018年4月より新卒でRCOに入社した松田です。 kaggle というデータ分析のコンペティション運営サイトが昨今世間に注目されていますが、 今回 TalkingData AdTracking Fraud Detection Challenge において2月にkaggleを始めた私が単独で金メダル(ソロゴールド)を獲得できたのでそれまでにやったことなどをシェアしたいと思います。 図: kaggleサイト( https://www.kaggle.com/ )のプロフィール画面より 図: kaggleでの活動ログ。中2ヶ月はやってないので実質の活動期間は1ヶ月ほど コンペの具体的内容やテクニックの話は 別記事 にまとめたので、

                                                        kaggle初心者の私が3ヶ月でソロゴールドを獲得した方法 | リクルート
                                                      • Python普及しろ協会に入会したい

                                                        この記事はタナイ氏によるPython滅ぼす協会に入会したいを読んでから執筆したものです。 この記事の趣旨はPython滅ぼす協会に入会したいに対する反論という形をとりながら、タナイ氏により「バカの言語」と揶揄され、「使ってエンジニアを名乗るというのは」「滑稽」とまで言われたPythonの立場を再考することです。 追記 本記事は「Pythonはこれだけ優れた言語だからみんな使おう!」というものではなく「言うほど酷くないと思うよ」程度のものです。 型アノテーションがあるからと言って静的型付けを軽視しているわけでもなければ、map関数をもってmapメソッドを不要だと言っているわけでもありません。 この記法は嫌い〜この記法が好き〜と表明することは個人の自由ですが、同様に「この記法は実はこういう意味があって〜」という意見があればそれを聞いた上で、物事を判断して欲しいです。もちろん、聞いても意見が変わ

                                                          Python普及しろ協会に入会したい
                                                        • Gin Web Framework

                                                          Gin Gonic The fastest full-featured web framework for Golang. Crystal clear. Performance and productivity can work together Gin is a web framework written in Golang. It features a martini-like API with much better performance, up to 40 times faster. If you need performance and good productivity, you will love Gin. Low Overhead Powerful API You can add global, per-group, and per-route middlewares,

                                                          • 雰囲気でgRPC,GKE+kubernetes使ってマイクロサービス作る - gong023の日記

                                                            マイクロサービス構成を作る上で、gRPC でアプリケーションを繋ぎ、それらを GKE+kubernetes で動かすというのは有力な選択肢の一つだと思います。ここでは実際にこの構成で動くAPIを作る手順を書いてみます。作ったコードと kubernetes の設定ファイルは以下のリポジトリに置いてあります。必要に応じて参照して下さい。 https://github.com/gong023/micro-sample なお、gRPC, GKE といったものの概要説明・メリット説明などはなるべく省きます。これらは公式ドキュメントで説明されているため、そちらを見るのが良いです。このエントリの末尾にリンクをまとめて貼っておきます。 作る構成 インフラ部分は GKE+kubernetes で、その上に gRPC でやり取りするアプリケーション群が動くという形でAPIを作っていきます。 アプリケーション部

                                                              雰囲気でgRPC,GKE+kubernetes使ってマイクロサービス作る - gong023の日記
                                                            • Big Sky :: Re: Go言語感想文

                                                              幾らか言いたい事があったので。 Go言語感想文 - なるせにっき 序 最近、敵情視察を兼ねた仕事ととしてGoでアプリケーションを書いていた。このアプリケーションがどんなものかはそのうち id:tagomoris さんがどこかで話すと思うけれど、この コンポーネント ... http://naruse.hateblo.jp/entry/2017/06/02/203441 GoroutineとChannel Goroutineはようするにスレッドなんですが、文法と実装の支援でより気軽に使えるのが他の言語との違いでしょうか。なので、Goroutineをどれだけほいほい使うべきかというコスト感覚を身につけることがとても大事な気がします。Rubyなどとは気持ちを切り替えていく必要があるでしょう。ぼくはまだ切り替えきれていません。 Goroutine はスレッドではありません。Goroutine はコ

                                                                Big Sky :: Re: Go言語感想文
                                                              • スキルをすばやく身につける最強のスキル「キャッチアップ力」について - NaeNote

                                                                こんにちは、NAEです。 ブロガーまわりで「質と量のどちらを優先すべきか?」という議論が起こっているのを見ました。 量は質に転化する 型を守らない素振りには意味がない 結局は思考の質がすべて アウトプットとスキルの話が混ざっているなーと思いつつ、もしスキルの話だとしたらひとつ言いたいことがあるのです。 「キャッチアップ力」こそ、これからは大事だよ 今回はそんなお話。 キャッチアップとは キャッチアップ力とは キャッチアップ力の重要性をあらためて強調する理由 変化が激しい中でひとつのスキルに依存するのはリスキー 汎用スキルはそのままでは使えない。活かすには専門スキルが必須 スキルポートフォリオは選択を誤ると茨の道 キャッチアップがすばやい人こそ生き残る すばやいキャッチアップに必要な2つの観点 知識をすばやく吸収する方法 質のよいインプットを大量に流しこむ 圧倒的な回数の反復 技能をすばやく

                                                                  スキルをすばやく身につける最強のスキル「キャッチアップ力」について - NaeNote
                                                                • Go1.16からは go get は使わず go install を使おう - Qiita

                                                                  この記事はGo Advent Calendar 2020 16日目の代打記事です。奇しくも16日目にGo1.16の話をすることになりました。 【追記】タイトル改題しました 状況が落ち着いてだいぶ経ったのと、未だに多くの方にこの記事を見ていただけていることから、Go1.16での変更というより、今を生きる私達がどうすればいいか、という点にフォーカスしたタイトルに改題しました。本文に変更はありません。一応注記すると、go get が廃止になったわけではなく、普段の開発フローで使うことはまずなくなった、という意味です。(一通り読んでいただければお分かりいただけるかと。) 【追記】Go1.18について ついに待望のGo1.18がリリースされましたね! https://go.dev/doc/go1.18#go-command そして予告通り go get によるインストール機能は削除されました。どうし

                                                                    Go1.16からは go get は使わず go install を使おう - Qiita
                                                                  • Goのエキスパートが教えるGoの魅力、プログラミング基礎入門 - FLEXY(フレキシー)

                                                                    ※本記事は2020年3月に公開された内容です。 上田拓也(@tenntenn)と申します。私はGoogle Developer ExpertでGoを担当しており、Go Conferenceの主催やgolang.tokyoなど各種コミュニティ活動も行っています。また、Goを採用している各社の技術顧問として開発現場にも携わっています。 今回はGoの基礎をご紹介します。私が公開している「Goで家計簿アプリを作ろう」というハンズオンの内容も一部抜粋して解説しているので、Goをはじめたばかりの初心者の方はぜひ参考にしていただけると嬉しいです。 Goの概要 サーバーサイドで使われる言語 最初に、Goの概要をご説明します。Goは2009年11月にGoogleがオープンソースで公開したプログラミング言語です。2020年2月に最新バージョン1.14がリリースされました。バージョンアップは大体半年ごとのペース

                                                                      Goのエキスパートが教えるGoの魅力、プログラミング基礎入門 - FLEXY(フレキシー)
                                                                    • プログラマは皆どのようにしてLisperと化して行くのか?

                                                                      LispでWebサービスを作ればYahoo!に60億で買ってもらえると聞いて 実はCと同じくらい速いコードが書けると聞いて ルンバがLispで書かれていると聞いて リリカルなので 面接で笑われてカッとなった マンガでわかるらしいので iPhoneアプリが開発できると聞いて iアプリでLispが書けると聞いて 初めて手に入れたポケコンがAI-1000だった ハッカーと画家を読んでしまった 普通のやつらの上を行きたいので 舌足らずなので セグウェイを制御するコードが一日で書けるようになると聞いて How to become a Hackerを読んだ 専用の求人情報に応募できると聞いて プログラミングClojureを読んだ 初めての人のためのLispを読んだ 自前のLispで書かれた将棋が強かったので LispとPostScriptがあればハッピーになれると聞いて LOLの熱にあてられた On

                                                                        プログラマは皆どのようにしてLisperと化して行くのか?
                                                                      • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

                                                                        tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,

                                                                          同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
                                                                        • プログラミング言語 Go ドキュメント — プログラミング言語 Go ドキュメント v0.1 documentation

                                                                          翻訳プロジェクトについて¶ この翻訳は Sphinx を使って以下のサイトで共同で行っています。翻訳に参加ご希望の方は、 yoshiki at shibu.jp までご連絡ください。 http://bitbucket.org/shibu/golang-docjp/ 翻訳ルール¶ まずはBitbucketのアカウントを作ってご連絡ください。書き込み権限を設定します。 翻訳したいものがある方は上記のBitbucketのサイト上でチケットを発行してください。Issueタブです。大項目単位です。 翻訳は読みやすさを考えて「です・ます」調で統一します。 Sphinxディレクティブを使った相互リンクは暇なときに設定します。もしくは書き込み権限のある方は設定してもらっても構いません。 Mercurialでcloneして翻訳してからcommit、pushしてください。commit前にpull&update

                                                                          • Golang パフォーマンスチューニング - Qiita

                                                                            この記事は Go Advent Calendar 2014 17 日目の記事です。 Go におけるパフォーマンスチューニングの話をします。 これらは Denco や Kocha などでのパフォーマンスチューニングの経験などから得た知見です。 処理系の話ではありませんのでご了承ください。 前提 プロファイリングを取った後、じゃあどうやって最適化するかというところの話です 「推測するな、計測せよ」 アルゴリズムやデータ構造は最適なものが選択されていると仮定します 小手先の最適化を行うよりアルゴリズム自体を変えたほうが圧倒的に良くなります。 この記事の各ベンチマークは Go 1.4 (go version go1.4 linux/amd64)で下記のコマンドにて取っています

                                                                              Golang パフォーマンスチューニング - Qiita
                                                                            • Go言語で基本的なCRUD操作を行うREST APIを作成 | DevelopersIO

                                                                              Javaのエンジニアだった私がGo言語でREST APIを作る上で学んだことをまとめています。 プロジェクト構成、単体テスト、Dockerイメージの作成など実際にREST APIを開発する上で必要だと思われる要素を盛り込みつつサンプルプロジェクトを作成していきます。 はじめに Javaのエンジニアだった私がGo言語でREST APIを作る上で学んだことをまとめています。 プロジェクト構成、単体テスト、Dockerイメージの作成など実際にREST APIを開発する上で必要だと思われる要素を盛り込みつつサンプルプロジェクトを作成していきます。 今回はできるだけ外部ライブラリやフレームワークを使わずにGo言語の標準機能のみで開発しました。 これからバックエンドにGo言語を使用することを検討されている方の参考になれば幸いです。 ※この記事は既にGo言語の開発環境をセットアップ済みで基本的な文法を学

                                                                                Go言語で基本的なCRUD操作を行うREST APIを作成 | DevelopersIO
                                                                              • DockerHub公式の言語Stack

                                                                                DockerHub公式の言語Stack DockerHub Official Repos: Announcing Language Stacks | Docker Blog DockerHubには公式のレポジトリがある.そこにはUbuntuやCentos,MySQLやPostgres,MongoといったDockerイメージがコミュニティーベースで,つまりより汎用的に使える形で開発され集められており,ベースイメージとして簡単に使えるようになっている. 今までは,OSのディストリビューションや,Webサーバ,DBなどがメインだったが,公式として各種プログラミング言語のベースイメージも公開された.現状(2014年9月時点)では,c/c++(gcc),clojure,golang,hylang,java,node,perl,PHP,python,rails,rubyがある. 特徴 この公式の言語s

                                                                                • はじめてのGo - すぎゃーんメモ

                                                                                  今さらながら、Goをもう少し読み書きできるようになりたいな、と思い。 A Tour of Go を一通り読んで、 GitHub - mattn/twty: command-line twitter client written in golang go-oauth/examples/twitter at master · garyburd/go-oauth · GitHub などを参考にしつつ、写経というかんじで Twitterのtimelineを取得するものをまずは書いてみた。 package main import ( "encoding/json" "fmt" "github.com/garyburd/go-oauth/oauth" "github.com/typester/go-pit" "log" "net/http" "os/exec" "runtime" ) func mai

                                                                                    はじめてのGo - すぎゃーんメモ