すべての投稿
Python開発者のためのC言語入門: プログラミングの深みにダイブ!
Python開発者が、複雑な問題を解決できるようになったり、コンピューターの仕組みを理解できるようになったりするために、Python開発者がC言語を学習する意義、そして、Python開発者がC言語を学習する時に、躓きがちなことについて、解説したいと思います。
【知らないと損】ソフトウェア技術者がGitを使用すべき理由4選【徹底的な差分管理】
変更履歴をコミットという非常に小さな単位で残す事ができるようになり、ソースコードの可読性を保ったまま、いつ誰が何のためにそのソースコードを追加したのかを記録することが出来るようになります。ファイルや行単位で、差分の履歴を追う事も出来るので、参照や検索も非常にしやすいです。コメントと違って、変更履歴を付け忘れるということも、Gitを使っている限り、絶対におきません。
【衝撃の事実】なぜ頭の良い人はソースコードが汚いのか
まず、大前提として、読みにくい/読みやすいソースコードとは何でしょうか?読みにくいソースコードの特徴や、読みやすいソースコードの書き方は、ネットや本で調べると、なんとか原則だの、何だの色々ありますが、可読性というのを一言で表現すると、認知負荷が高いか/低いかという話です。
【まだ間に合う!】プログラマーのための半導体入門
私自身も、単に抽象化されたハードウェアの上で、ソフトウェアを書くのではなく、ハードウェアレベルで、最適化されたソフトウェアを書くようになってから、コンピュータの見方が大きく変わりました。半導体の重要性を理解する事は、ハードウェアの重要性を理解する事であり、それはプログラマーにとって、効率的なソフトウェアの開発に繋がります。
IT技術トレンドにキャッチアップするための唯一つの習慣【東大卒外資ハイテクエンジニアが実践】
はてなブックマークというのは、本来、オンラインでブックマークしたり、ブックマークについてコメントをつけたりするWebサービスなんですが、このサービスはなぜか、ITエンジニアが多く使っているようで、IT系のどこかしらのクラスタで、ホットになったネタがあったら、かなりの確率で、人気エントリーに入ってきます。
【衝撃の事実】再起動しないと、コンピュータがおかしくなる原因
コンピュータが再起動が必要としてしまう理由は、技術的に明確で、それは実は、ハードウェアというよりも、メモリリークと呼ばれるソフトウェアバグに由来しています。これは、ソフトウェアエンジニアを、長年悩ませている問題で、現在でも、それを根本的に解決する手段はありません。
【売り切れ続出】プログラミング学習者がラズパイを買うべき理由
ラズパイは、クレジットカードサイズの、コンピュータです。小さな基板に、コンピュータに必要なエッセンスの全てが詰みこまれています。初めて、これを見たときは、こんな小さな基板で、マウスとキーボードを使って、普通のパソコンと同じように、操作が出来る事に感動したものです。これは、コンピュータ技術の結晶とも言える代物です。
【9割が躓く】C言語ポインタを攻略せよ
本日は、C言語学習者がポインタで躓いてしまう理由と、ポインタを理解するために必要な知識についてご紹介したいと思います。また、ポインタをそもそも何のために使うのかという問いにもお答えできるように、プログラムを効率的に書くための、様々な応用があるので、それについても軽くご紹介したいと思います。
Web技術の限界。画面の捏造がちょろすぎる理由
開発者ツールを使えば、誰でも、Webサイトの文字をいじって、偽の画面を作る事ができます。しかし、Coincheckにとっても、このような捏造された画面がインターネットに流布することは、望ましくないはずです。なぜこのような不正行為を、Webの世界では、のうのうと受け入れているんでしょうか?
コンピュータ科学専攻の学位に価値はない?ChatGPTを見て、東大卒エンジニアが考えた事
本日は、少し、いつもと趣旨を変えて、技術という枠を超えて、コンピュータ技術が社会を、人々の価値観をどう変えていくか、という事について、少しお話してみたいと思います。具体的には、ChatGPTの存在によって、エンジニアの働き方にどういう影響があり、その結果、どういうエンジニアの価値が高まり、どういうエンジニアの価値が下がるのか、という分析をご紹介したいと思います。
初心者が学ぶべきプログラミング言語3選!東大卒エンジニアが解説【プログラミング入門】
本日は、何のプログラミング言語を勉強したらいいかという質問を良く頂くので、初心者が学ぶべきプログラミング言語3選というテーマでお話しようと思います。
【超重要】今日こそ、C言語のおまじないの正体を暴く!!
このおまじないは単なるプログラムの書き方・作法という次元の話ではなく、 『自分の書いたプログラムがどのような仕組みで、実行ファイルに変換され、どのようにコンピュータによって実行されているのか』という、根源的な問いに関わる話だからです。
【なぜ?】開発者がLinuxを使うべき理由10選
どのOSで開発するかというのは、あなたがいかにストレスなく開発に集中できるかということに大きな影響を与えます。このような、いかにストレスなく開発に集中できるかという考えかたは、開発者体験(Developler Experience)と呼ばれており、これを向上させることは、ストレスの軽減や生産性を改善する上で、非常に重要な観点になります。
【知らなきゃ損】Linuxの父がC言語を使い続ける合理的な理由
C言語は50年以上前に開発された言語で、とても古いので、時代遅れと錯覚しがちですが、今でもバリバリ現役の素晴らしい言語です。 民間企業の製品開発でも、C言語が使われることはいまだに多く、おそらく10年後も20年後も使われ続けている言語でしょう。 しかし、Go、Java、Ruby、TypeScript、Pythonのように新しく優れた言語が次々開発される中で、 なぜ、このような古い言語が今でも、そして、これからも使われ続けると言えるのでしょうか?
【絶対やめろ】デバッグが遅いエンジニアの共通点とは?劇的改善法を大公開!
今回の動画では、バグが解決できない、あるいは解決するのに時間がかかってしまう理由と、それを改善するための具体的な方法(FTA)を紹介したいと思います。これは、コンピュータに関する特定の分野の知識というよりも、不具合を特定するための思考プロセスのような話で、コツさえ掴めば、あなたも明日からすぐにでも実践できる方法になります。FTAの知名度は低いですが、どんな言語で、何を開発するにしても、めちゃくちゃ重要で、一生役立つ思考プロセスなので、是非最後までご覧ください。
コンピュータの仕組みを完全に理解するための最強ロードマップを東大卒エンジニアが解説
コンピュータはハードウェアを抽象化しているので、ブラックボックスとして使えるという考え方もありますが、これは、完全な建前で、実際には、コンピュータの仕組みを知らずにソフトウェア開発をすると、環境構築がうまくいかなかったり、不具合の原因が特定できなかったり、また、パフォーマンスの点で、ハードウェアの力を100%発揮できないという事態に陥ってしまいます。
【世界一分かりやすい】関数・引数・返り値とは?使い方から内部実装(アセンブリ)までプロが解説
単に関数の使い方を説明するだけでなく、引数の種類として値渡しと参照渡しというものについて説明したいと思います。例えば、C++では、値渡しと参照渡しの両方があって、適切に使い分けることで、初めて安全なプログラミングが可能になります。あなたがもし、何らかの言語を使ってブログラムを書くときは、必ずその引数が値渡しなのか参照渡しなのか意識する必要があり、それは、言語ごとの実装に依存します。
【超重要】Linuxカーネルが認めた!信頼性を高めるC言語の「型」の書き方
C言語では、コンパイラやプロセッサーの振る舞いを意識して、適切な型を選ばないと、オーバーフローに起因する様々なバグが発生する可能性があります。皆さんも、C言語でバグのない、安全なプログラムを書けるようになるためには、変数を定義するときに、 適切な型を自分で選択できるようになる必要があります。
【SEOを支える技術】検索上位のサイトは必ず行っている。サイトアクセスの分析基盤を構築する方法
インターネットには大量に情報があるので、コンテンツの質の低さが原因で見られないという以前に、コンテンツの存在すら知られていないということが、ほとんどです。実際に検索した人のうち8割は、なんと検索結果の1ページ目までしか見ないという衝撃的な調査結果もあります。なので、検索結果で上位に表示されるというのは、非常に重要な事なんです。
【動画配信を支える技術】GPUによる爆速エンコードを実演!
さらに、これらの処理を高速化するために使われるGPUという半導体についてもご説明したいと思います。最近流行りの、ChatGPTなんかも、このGPUなしではまったく成立しない技術で、GPUというのは、技術的に非常に重要なトピックになります。
【Web開発入門】独自ドメインの仕組み・設定方法を徹底解説。最短&無料でブログサイトをデプロイ Part2
...しかし、なんと、これらはGitHub Pagesというサービスを使用すると、完全に無料で簡単にできます。手順としては、10分ほどで終わりますが、今回はその仕組みや背景も含めて丁寧にご紹介しましょう。
【注意喚起】ChatGPTを騙る情報商材が増えています。見分け方&背景を徹底解説
ChatGPTを騙る情報商材が増えています。しかし、ほんの少しのリテラシーさえあれば、この詐欺は見抜くことができます。そこで、本日は、ChatGPTとはそもそもどんなものなのか、そしてChatGPTを扮した詐欺の見抜き方について説明をしましょう.
【Web開発入門】開発の流れ・考え方を徹底解説。最短&無料でブログサイトを制作 Part1
最近作った私立YouTube高専の公式サイトはNext.jsというフレームワークを使用して、二日ほどで開発したものです。こちらのサイトは、開発だけでなく、サーバーや独自ドメインやSSLという暗号化の仕組みも含めて全て無料で運営しています。
【作業効率化】スワイプを完全自動化して、寝ている間にマッチを成立!
技術的には、Puppeteerというライブラリを使用して、ChromiumをTypeScriptで操作して、自動スワイプする形になります。さらに、Raspberry Piというシングルボードコンピュータを使用することによって、不定期にそのプログラムを自動実行するところでまで、ご紹介するので、是非ご覧ください。
【作業効率化】ブラウザ操作を自動化して、Hな画像を最高画質で大量保存する
本日は、Instagramから特定のアカウントの画像を全て自動で保存する方法について説明しようと思います。しかも、スクリーンショットなどでは画質が落ちてしまうので、サーバーから直接最も高画質なものを保存する方法です。
ソフトウェアエンジニアの職種について解説
最も身近なコンピュータであるスマートフォンを舞台に、どこでどんなソフトウェアが動くことによってて、スマートフォンという非常に便利なデバイスが実現しているのか、それについて解説しようと思います。
コンピュータのプロがPCスペックの見方を解説
ほとんどの人はこういったコンピュータ製品のスペックを見ても、それが何を意味しているのか理解できないと思います。実は、スペック表だけでも、エンジニアにとっては、見るだけで発狂したくなるような技術的に面白いトピックが盛りだくさんです。
【Vtuberを支える技術】バーチャル美少女受肉の舞台裏。3Dモデル・トラッキング・音声合成
Vtuberには、アバター、声、収録という3つの要素があります。現在は、個人のコンピュータで、当たり前のように実現されていますが、ハード的にもソフト的にも非常に高度な技術と、開発者の血と汗がてんこもりに詰め込まれています。
最強の履歴書をつくろう【ソフトウェアエンジニア編】
以前、日本三大国家資格である医師、弁護士、公認会計士を制覇した河野玄斗さんが、最強の履歴書を作ろうという企画を行っていて、エンジニアだったらどういう経歴が最強かなーと思って考えてみたので、それを共有したいなと思います。
【シェル 中級】パイプ(これ→ | )の仕組みについて解説します。プロセス間通信
本日は、そもそもプロセス間通信とは何かという話から、パイプの原理やシェルがパイプを実際にどう扱っているかについて話そうと思うので、是非ご覧ください。
【前編】シェル初心者が最初に覚えるコマンド40選
CLI・シェルの使い方についてご紹介します。
現場で使える正規表現入門
正規表現というのは、開発ソフトの対象の中で使うだけでなく、開発を進めるうえで、ソースコードを読んだり、検索したり、置換したり、を効率的にできるようになるので、この動画を見て、是非実践して、自分の作業を効率よく進められるようにして下さい。
私立YouTube高専開校しました。
2022年12月4日、私立YouTube高専を開校しました。学校説明会を開催したので、ぜひご覧ください。