TechCraft – エンジニアのためのスキルアップメモ

エンジニアのスキルアップを少しでも加速する技術ブログ

入門

通信の輻輳制御とは? ネットワーク安定のための技術

輻輳制御(Congestion Control)とは? – ネットワーク通信の安定化技術 1. はじめに ネットワーク通信では、多くのデバイスが同時にデータを送信すると、通信経路上でデータが詰まり、パケットロスや遅延が発生することがあります。この現象を輻輳(ふくそ…

ラダー vs ST 2025年最新の制御プログラミングの選択と最適化

ラダー vs ST(構造化テキスト):最新の制御プログラミングの選択と最適化

BashでHello World

BashでHello Worldを出力する方法 1. はじめに Bash(Bourne Again Shell)は、LinuxやmacOSなどのUNIX系OSで広く使われているシェル(コマンドラインインタプリタ) です。 Bashスクリプトを使うことで、シェルコマンドを自動化し、繰り返し作業を効率化で…

Wi-Fiの規格一覧! 分かり易くWi-fiを理解する

Wi-Fiの規格とは?最新規格から過去の規格まで徹底解説! 1. はじめに Wi-Fi(無線LAN)は、スマートフォンやパソコン、IoTデバイスなど、現代の通信インフラに欠かせない技術です。 Wi-Fiの規格は、IEEE(Institute of Electrical and Electronics Engineer…

AWKでHello World

AWKでHelloWorldを簡単に実装

Pythonで始めるRPAの初歩

Pythonで始めるRPA ── 初心者向け入門ガイド はじめに 近年、企業の業務効率化や自動化の手段としてRPA(Robotic Process Automation)が注目されています。RPAは、ルーチンワークを自動化することで時間短縮や人的ミスの削減を可能にします。 RPAツールには…

Kotlin と Java

KotlinとJavaの関係 – 互換性と違いを徹底解説 プログラミング言語 Kotlin(コトリン) は、近年Javaに代わる選択肢として注目されています。特にAndroid開発では、GoogleがKotlinを「推奨言語」として発表したことで、その人気が急上昇しました。 では、Kot…

LOLCOSEでHelloworld

LOLCODEでHello Worldを出力する 1. はじめに LOLCODE は、インターネット文化(特にLOLCatsミーム)を元に作られたユーモラスなプログラミング言語 です。 文法が英語のスラングやミームのようになっており、楽しみながらプログラミングが学べる のが特徴で…

ST言語の応用 多軸位置決め・ジョグ

ST言語での位置決め制御:多軸制御・ジョグ機能の追加とさらなる応用 1. はじめに 前回の記事では、ST言語を使用して、PLCopen Motion Control Function Blocks(MCFB)を活用した位置決め制御の基本 を解説しました。 今回はさらに発展させ、多軸制御、ジョ…

Lispで学ぶ再帰とリスト

Lispで学ぶ再帰とリスト操作:基本から実践まで 1. はじめに Lisp(リスプ)は、リストを中心としたデータ構造と再帰処理が得意なプログラミング言語 です。 特に、コードがデータとして扱える特性(メタプログラミング)や関数型プログラミングの強力なサポ…

reStructuredTextとは? 管理しやすいマークアップ言語

reStructuredTextとは?マークアップ言語の特徴と活用方法 1. はじめに reStructuredText(reST) は、Pythonの公式ドキュメントやSphinxで使用される軽量マークアップ言語です。 Markdownと似た構造を持ちながら、より高度な文書構造をサポート しているの…

APIとは? 仕組みを分かり易く

APIとは?仕組み・種類・活用方法をわかりやすく解説 1. はじめに API(Application Programming Interface) とは、異なるソフトウェアやシステム同士が通信するための仕組み です。 例えば、天気予報アプリが気象データを取得する際や、SNSのログイン機能…

AI駆動開発 最新の開発支援ツールについて

AI開発支援ツールの進化:Clineとその競合ツールの比較 1. はじめに 近年、AIを活用した開発支援ツールが急速に進化し、エンジニアの生産性向上に貢献しています。 特に、Clineは、VS Code向けのAIエージェント型の拡張機能として注目を集めており、コード生…

Hadoopとは? 分散処理の基礎と応用

Hadoopとは?ビッグデータ処理を支える分散処理フレームワークの基礎と応用 1. はじめに Hadoop(ハドゥープ)は、ビッグデータを効率的に処理するためのオープンソースの分散処理フレームワーク です。 Googleの論文を基に開発され、HDFS(Hadoop Distribut…

CircleCIとは CI/CDの基本

CircleCIとは?CI/CDを自動化する強力なツールの特徴と使い方 1. はじめに CircleCIは、継続的インテグレーション(CI)および継続的デリバリー(CD) のための人気の高い自動化ツールです。 ソフトウェア開発において、コードのビルド・テスト・デプロイを…

CI/CDの応用

CI/CDの応用:高度な自動化で開発フローを最適化する方法 1. はじめに CI/CD(Continuous Integration / Continuous Deployment)は、ソフトウェア開発の自動化を支援する重要なプラクティスです。これにより、コードの統合、テスト、デプロイを効率的に行い…

第四回 ST言語

〜実践的なPLCプログラミングを学ぼう〜 第4回: HMIとの連携とデータ可視化 1. はじめに 前回の第3回 エラーハンドリングとデータロギングでは、エラーハンドリングの実装方法や、データロギングによるエラー管理の手法について学びました。 今回は、HMI(ヒ…

Next.jsとは?

Next.jsとは? – 最新のフルスタックReactフレームワークの概要と活用方法 (注記:本記事は2025年2月時点の情報に基づいています。) 1. Next.jsとは? Next.jsは、Vercel社が開発したReactベースのフルスタックフレームワークです。主にSSR(サーバーサイ…

自立型AI最新 Devinとは?

Devinとは?自律型AIソフトウェアエンジニアの概要 1. Devinとは Devinは、AIスタートアップ企業のCognitionが開発した完全自律型のAIソフトウェアエンジニアです。 2024年3月に発表され、ユーザーの指示をもとに、システム設計、コーディング、デバッグ、デ…

Dartとは? webでもAndroidでもクロスプラットフォームの魅力

Dartとは?初心者向けに解説 1. Dartとは? Dartは、Googleが開発したオープンソースのプログラミング言語で、主にモバイルアプリ開発(Flutter)に使用されます。 JavaScriptに代わるWeb開発言語としても設計されており、シンプルで高速な処理が特徴です。 …

Reactとは?

Reactとは?初心者向けに分かりやすく解説 1. Reactとは? Reactは、Facebook(現:Meta)が開発したJavaScriptのライブラリで、UI(ユーザーインターフェース)を構築するためのツールです。 シンプルで効率的に動的なWebアプリケーションを作れることから…

Node.jsとは?

Node.jsとは? – JavaScriptでサーバーサイド開発を可能にする実行環境 1. Node.jsとは? Node.js は、JavaScriptをサーバーサイドで実行できる環境 です。Google ChromeのV8エンジンをベースにしており、非同期I/Oとイベント駆動モデルを活用することで、高…

Vercelとは? 最新のweb

Vercelとは? – フロントエンド開発者のためのホスティング&デプロイサービス 1. Vercelとは? Vercel(ヴァーセル) は、Next.jsの開発元であるVercel社が提供するクラウドホスティング&デプロイプラットフォーム です。特にフロントエンド開発者向けに最…

PowerBIの基礎

Power BIの基礎 1. Power BIとは? Power BIは、Microsoftが提供するデータ分析・可視化ツールです。Excelの拡張版のような感覚で扱え、さまざまなデータソースと連携してインタラクティブなレポートを作成できます。 Power BIの主な特徴 データの統合:Exce…

C言語でHello, World! を表示する方法

# C言語でHello, World! を表示する方法 ## はじめにC言語は歴史が長く、多くのプログラミング言語の基盤となっています。本記事では、C言語の基本中の基本である`Hello, World!`プログラムを作成し、その実行方法について説明します。 --- ## 1. C言語のHel…

第三回 ST言語

〜実践的なPLCプログラミングを学ぼう〜 第3回: エラーハンドリングとデータロギング 1. はじめに 前回の[第2回 実践的なPLCプログラムの作成]( techcraft.hatenablog.com )では、ST言語を用いたモーター制御、タイマー、カウンター、関数ブロックの活用につ…

LispでHelloworld

Lisp で Hello, World! を出力する方法 1. はじめに Lisp(リスプ) は、1958年に開発されたプログラミング言語で、関数型プログラミング や メタプログラミング の分野で強力な機能を持っています。 本記事では、Lisp で Hello, World! を出力する基本的な…

V言語とは? 影響を受けた言語たち

V言語(Vlang)に影響を与えたプログラミング言語と技術 1. はじめに V言語(Vlang)は、シンプルで高速なコンパイルが特徴のモダンなプログラミング言語です。 その設計には、いくつかの既存のプログラミング言語や技術の影響を受けています。 本記事では、…

V言語とは? Hello worldまでやってみる

V言語(Vlang)とは? – シンプルで高速なプログラミング言語 1. はじめに V言語(Vlang)は、2019年にAlex Medvednikovによって開発されたシンプルかつ高速なプログラミング言語です。 Go言語やRustに影響を受けており、コンパイル速度が非常に高速であるこ…

AWSとは?

AWS(Amazon Web Services)とは? – クラウドコンピューティングの基礎知識 1. はじめに AWS(Amazon Web Services)は、Amazonが提供するクラウドコンピューティングプラットフォームです。2006年にサービスを開始し、現在では世界中の企業や個人が利用し…