Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Non-Programmer's Programming Techniques
Search
Hiroaki Kadomatsu
March 03, 2018
Programming
1
2.9k
The Non-Programmer's Programming Techniques
ノンプログラマーのプログラミング活用法
Hiroaki Kadomatsu
March 03, 2018
Tweet
Share
More Decks by Hiroaki Kadomatsu
See All by Hiroaki Kadomatsu
自走するプログラミング入門者の探し方
note103
4
5.5k
はじまりのPerl
note103
0
2.2k
Other Decks in Programming
See All in Programming
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
160
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
290
受け取る人から提供する人になるということ
little_rubyist
0
170
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.4k
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
740
Googleのテストサイズを活用したテスト環境の構築
toms74209200
0
300
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
250
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
14
1.9k
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
160
ECS Service Connectのこれまでのアップデートと今後のRoadmapを見てみる
tkikuc
2
230
Generative AI Use Cases JP (略称:GenU)奮闘記
hideg
0
180
C#/.NETのこれまでのふりかえり
tomokusaba
1
180
Featured
See All Featured
Practical Orchestrator
shlominoach
186
10k
KATA
mclloyd
29
14k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
A Philosophy of Restraint
colly
203
16k
Statistics for Hackers
jakevdp
796
220k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Music & Morning Musume
bryan
46
6.2k
The Pragmatic Product Professional
lauravandoore
31
6.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Transcript
ϊϯϓϩάϥϚʔͷ ϓϩάϥϛϯά׆༻๏ The Non-Programmer's Programming Techniques দ໌ / @note103
࣍ 1. ࣗݾհ / ൃදझࢫ 2. ׆༻ࣄྫ 1. Vim 2.
Shell 3. Perl 4. Excel 3. ;ΓฦΓ / ·ͱΊ 2
ࣗݾհ • দ໌ / @note103 • 1975ʙ • ฤूऀ •
commmons: schola ʢίϞϯζɾείϥʣ • ࡔຊཾҰमʹΑΔԻָશूʢ2008ʙʣ 3
commmons: schola • CDϒοΫͷԻָશू • ࡔຊཾҰ͕ݹࠓ౦ͷ Իָ͔Β໊ԋΛݫબ͠ CDऩ • ଐϒοΫϨοτP120
• ࠲ஊձ • ղઆจ • ද etc. 4
<PR>৽ץใ</PR> commmons: schola • 2018/03/21 ୈ17ר ൃച!! • ςʔϚϩϚϯԻָ •
γϣύϯɺγϡʔϚϯɺ ϫʔάφʔɺϒϥʔϜεɺ ϑΥʔϨɺϚʔϥʔ etc. 5
ϓϩάϥϛϯάೖ • 20138݄: Perlೖֶࣜ in౦ژ • ʮྻ/ϋογϡ/ϦϑΝϨϯεʯߨ࠲ʹࢀՃ • 20139݄: YAPC::Asia
Tokyo 2013 • Perlೖֶࣜ@YAPCʹग़੮͢ΔͨΊॳࢀՃ 6
ຊͷझࢫ
झࢫ 1. ϓϩάϥϛϯάͷٕज़ʹϊϯϓϩά ϥϚʔͷʹཱͭͷ͕ͨ͘͞Μ͋Δ 2. ᷿ͷٕज़ใͷେϓϩάϥϚʔൃ 3. ϊϯϓϩάϥϚʔʹΑΔϊϯϓϩάϥ ϚʔͷͨΊͷٕज़ใΛ۩ମతͳࣄྫ ͱͱʹ͓ಧ͚͠·͢ʂ
8
׆༻ࣄྫ 1. Vim 2. Shell 3. Perl 4. Excel 9
Vim
Vim 1. IDE෩ڥ 2. diffػೳ 11
Vim • IDE෩ڥ 1. ը໘ׂ 2. Plugins 1. vimfiler 2.
tagbar 3. easymotion • DEMO 12
Vim ࢀߟࢿྉ: • Software Design 20151݄߸ • ࣮༻Tipsˍରࡦ ʦϓϩάϥϚฤʧ by
@mattn 13
Vim • diff/ࠩػೳ 1. ը໘Λׂ 2. ରσʔλΛஔ 3. :windo diffthis
• DEMO 14
Vim • ເͷΑ͏ͳฤूˍࣥචڥ!! • ͳͥϓϩάϥϚʔ͚͕ͩͬͯΔͷ͔ʁ • Atom, ͦͷଞIDEͰ͍͍͔ 15
Shell
Shell • Perlͱ.bashrcΛΈ߹Θͤͯ 1. σΟϨΫτϦҠಈ 2. ϑΝΠϧݕࡧ 3. จࣈྻݕࡧ •
DEMO 17
Shell • .bashrc͔ΒPerlεΫϦϓτΛݺͼग़͠ • γΣϧεΫϦϓτͰॻ͘ͷ͕ͭΒ͔ͬͨ • PerlͰॻ͍ͨΒ͙͢ग़དྷͨ 18
Shell • Finder͡Όμϝͳͷʁ ➔ ർΕΔ • ੩తUIʹࣗͷࢹઢΛಈ͔͢ʢಡॻతʣ • λʔϛφϧૢ࡞ϥΫ •
ಈతUIʹࣗͷࢹઢݻఆʢTV/ωοτతʣ • ϗʔϜϙδγϣϯҡ࣋Ͱ͖Δ 19
Perl
Perl • ςΩετมثͱͯ͠ར༻ 1. __DATA__ ҎԼʹૉࡐσʔλΛೖΕΔ 2. forจͰ্͔ΒԼҰؾʹྲྀ͢ 3. ifจͱਖ਼نදݱͰཉ͍͠ใΛநग़
21
Perl • දσʔλΛҰׅม 1. มલσʔλʢอ༻ʣ 2. มޙσʔλʢຊ൪σβΠϯ༻ʣ 22
Perl • දσʔλΛҰׅม • DEMO 23
Perl • ͦͷଞͷࣗ࡞πʔϧ 1. ऍϚʔΫ(*)Λ͚ͨ୯ޠΛநग़ • Mecab, Text::ShirasuΛ༻ 2. େྔͷՕॻ͖͔ΒॏෳߦΛ(நग़|আ)
3. ϑΝΠϧ໊ͷҰ෦Λมߋͯ͠(ίϐʔ|ϦωʔϜ) 24
Excel
Excel • ࡞ۀهγʔτͷߋ৽ • DEMO 26
Excel • ࣌ࠁΛͻͱͭଧͪࠐΊ ͋ͱExcel͕શ෦ຒΊͯ͘ΕΔ 1. লྗԽɾ࣌ؒઅ 2. σʔλͷਫ਼্͕͕Δ 27
Excel • Ԡ༻ฤ 28 ೖߘ·Ͱͷ (49) ࠓճͷೖߘ49લͷ࡞ۀ࣌ؒ(8.55h) લճͷೖߘ49લͷ࡞ۀ࣌ؒ(2.40h) ࠩ=ࠓճ-લճ ඪ࡞ۀ࣌ؒ(ඪ४/࣮ࡍ)
;ΓฦΓ
;ΓฦΓ • Α͘Α͘ߟ͑Δͱ… • ϓϩάϥϛϯάΛࣄʹ׆͔ͦ͏ͱࢥͬ ͨ͜ͱͳ͍ • ͍Ζ͍Ζศརʹͳ͔ͬͯΒʮࠓ·Ͱෆ ศͩͬͨ…ʯͱؾͮ͘ 30
;ΓฦΓ • ͱͱݴ͑… • ʮϓϩάϥϛϯάͰ͖ͨΒΧοίΠΠ ͳʙʯͱࢥ͍͚ͬͯͨͩ • ৗతʹϓϩάϥϛϯά͢ΔͨΊʹ ڧҾʹࣄʹऔΓࠐΜͩ 31
·ͱΊ ϊϯϓϩάϥϚʔͷϓϩάϥϛϯά׆༻ྫ 1. ୯७࡞ۀ͕ݮͬͨ ➔ PerlͰද࡞, ExcelͰ࡞ۀϩά 2. ࣗઐ༻ͷࣄಓ۩Λ࡞Εͨ
➔ VimͰIDE, diff ➔ Shell&PerlͰσΟϨΫτϦҠಈetc. 3. ָ͠Έ͕૿͑ͨ 32