検索 - みる会図書館

検索対象: The Best Software Writing I. Selected and Introduced by Joel Spolsky

The Best Software Writing I. Selected and Introduced by Joel Spolskyから 16件ヒットしました。

The Best Software Writing I. Selected and Introduced by Joel Spolsky


294 INDEX software preferences, 99 software sales, 223 ー 31 Butterfield, Stewart, 195 C, 129 ー 31 , 133 C + + , 129 ー 33 career planning related to employer, 147 ー 48 and teams, 160 civil discourse and RSS permalinks, 29 COde correctness, compiling and, 75 coderspeak, 269 Cognitive Style of PowerPoint, 262 , 264 Cohen, Geoff, 194 Columbia disaster PowerPoint slide link, 262 competltron C vs. C + + , 130 Google Gmail, 114 IE vs. Netscape, 112 Microsoft Office, 148 in software product strategy, 237 web apps vs. desktop apps, 114 in workplace, 160 , 168 compiler C, C + + compatibility, 131 checked exceptions, 70 as correctness checker, 75 ー 77 essential programming t001 , 143 for non-executable objects, 80 ー 81 perception compared tO human, 1 as programming style enforcement, 27 , 6 static type checking, 67 ー 68 writing, 103 , 258 compile time type checking vs. runtlme , 75 commercial software, bureaucracy in, 138 communication, bitching as, 147 communication patterns, types Of, 185 Communitree, early net 、 vork group interactlon example, 191 ー 92 company/job sucks, 147 ー 49 compensatlon balanced scorecards, 166 compensate based on span Of influence, 168 merit pay de-emphasis, 166 non-monetary motlvators, 169 profit sharing, 167 promotion system, 165 sales, 225 , 227 compiling and COde correctness, 75 complex VS. simple software design, 23 ー 24 computer-as-door software, 211 computers as SOCial mediators, 39 computer social models, simplistic simulations, 41 conference calling, problems encountered, 185 content as value, 31 contlnuous partial attention, 38

The Best Software Writing I. Selected and Introduced by Joel Spolsky


product cost, 238 product need, 237 technical support, 241 REST (RepresentationaI state Transfer), 86 ー 87 INDEX 301 syntax and punctuation, 269 ー 70 variables, 274 RuntimeException, 70 runtime VS. compile time type revolution in social software, 194 checking, 75 rhetorical tradition vs. logical tradition, 91 Ries, AI, 240 Ritchie, Dennis, 267 RSS, 27 Ruby arrays, 282 block arguments, 281 blocks, 280 class methods, 278 class variables, 280 computer language or coderspeak, 269 constants, 276 data types, 275 , 276 discussron 0f code examples, 286 ー 87 , 289 do/end blocks, 281 global variables, 279 hashes, 283 lnstance variables, 279 keywords, 285 method arguments, 278 method chaining, 278 methods, 277 operators, 284 parts 0f speech, 273 pipe character block argument delimiter, 281 ranges, 282 regular expressions, 284 salesmen character traits, 228 compensation effects, 226 defining characteristic, 225 description, 224 management of, 227 , 228 skill set, 226 and small software vendors 230 sales Of software. ど ビ software sales SC1ence fiction, software in, 36 Scrum Master, 158 search Microsoft vs. Google, 8 simple vs. complex design, 26 Semantic Web, 87 ー 88 Senate Bill 88 , 64 Seven Pillars of Wisdom, 33 SHOE (Simple HTML ()ntology Extensions), 87 Sifry, Dave, 29 , 32 SimCity, Windows compatibility, 47 Simple HTML Ontology Extensions (SHOE), 87 simple VS. complex software design, 23 ー 24

The Best Software Writing I. Selected and Introduced by Joel Spolsky


296 INDEX importance Of product/program managers, 144 product development schedule overruns, 145 reqmrement for verSIOn control and bug tracking tools, 143 state of being screwed, 141 team forward velocity, 149 engmeering manager, JOb characteristics, 140 ergonomics, transrtion tO, 183 Excel as a database avoidance t001 , 17 expenence, learning from, 173 ー Experiences in Groups, 187 Extreme Programming, 126 Federalist Papers # 10 and 80 Slashdot moderation system, 217 federated identity, 40 Ferguson, Don, 24 firing, hiring vs. , 247 ー 48 flame wars, 212 , 213 flexibility, success due to, 41 Flickr, 195 FogBugz bug tracking software, 152 FORTRAN, use of whitespace, internal architecture, 90 future development plans, 85 Ftrain. C01れ Fries, Ed, 175 Friendster, 41 Friedman, Daniel, 267 Fowler, Martin, 70 , 126 5 internal software technologies, 82 future software as SOCiaI solutions, 43 games, shelflife, 49 gaming the system in performance measurement, 151 Gap, software sale gap, 223 , 233 Gates, Bill, 26 , 189 Gettysburg Address PowerPoint slide link, 264 role of core group, 201 patterns, 189 , 190 separate modes, 196 networking simultaneous inattention, 215 negatlve attentlon VS. learning from experience, 193 large vs. small groups, 195 horror 0f censorship, 216 Microsoft example, 189 enemies, Bill Gates and door culture, 216 groups, 193 constltutional criSIS online Bion's theories, 187 group lnteractlon group based software design, 184 search, 7 Google vs. Microsoft Windows interface, 114 Google Gmail, application demotivator, 161 goals, impossible, as employee Gillmor, Steve, 32

The Best Software Writing I. Selected and Introduced by Joel Spolsky


304 INDEX ubiquity of the web, driving force in group interaction, 197 ー 98 Udell, Jon, 26 unfairness ln compensatlon, 161 umt testlng VS. compile or runtime testing, 75 ー 76 upgrading, Windows, 48 URL location as new command line, 114 usability, 183 Usenet, 199 Variant data type, 68 variatlon ln wealth, actual significance, 96 VBScript ActiveX controls, 136 venture capital firms and hacking, 105 Visual Basic programming, 95 wealth and productivity, 96 Web, 32 web apps vs. desktop apps, 114 future Microsoft competition, 116 web based programming, future standard, 111 web interface in development, 113 weblogs, 92 , 116 , 186 , 195 ー 96 , 213 , 216 ー 17 web logs, as multiple commumcatlon pattern software, 186 web publishing language need, 82 websites vs. books, production speed and complexity, 83 elegant, 84 , 86 as forms, 89 motivation for producing, 83 removlng semantic boundaries, 90 web technology, current, compared to IBM PC Jr. , 89 Weinberger, David, 196 WELL, The, 186 whitespace, 4 ー 5 Wiki description and examples, 196 ー 98 as social software, 216 ー 17 Wikipedia, example of power of core group, 203 Win32 API Microsoft strategic advantage, 115 ー 16 and VBScript, 136 windowing, hOW it was next big thing, 89 Windows and the MAC, 171 ー 72 search interface, 7 upgrade application compatibility, 47 ー 50 vs. web based programmmg, 111 ー 13 ・ Win32 API, 115 ー 16

The Best Software Writing I. Selected and Introduced by Joel Spolsky


technological and SOCial issues coupled, 192 ubiquity of the web, 197 ー 98 GUI DESIGN, 51 GUI's, transltion to, 183 Gyford, Phil, 196 Habitat, Lucasfilms online group, 193 hackers ability to concentrate, 108 clumping together, 104 corporate retreats and team- building exercises, 100 how to become one, 107 interesting work as motivation, 98 Java programming, 95 , 98 tO know one you must be one, 102 and learning from work, 103 Microsoft understanding of, 100 and money, 97 and nasty little problems, 103 Office envlronment, 100 open source software, 99 Perl programming, 101 programming language as a medium Of expression, 99 programming t001 preference, t001 ChOice as motlvatlon, recogninng one, 106 R&D department, 104 Python programming, 95 , 98 95 98 INDEX 297 VisuaI Basic programming, 95 what makes great one, 95 Hegel, J0hn, 209 Hidden Value, 169 hiring developers asking for code samples, 257 developers VS. programmers, 254 education level, 255 , 256 hire the best rule, pro's and con's, 252 hiring decision questions, 259 looking for someone better than yourself, 252 open source contributions, 258 role of women, 251 self-awareness, 253 hiring guidelines getting multiple opinions, 251 hiring after need is clear, 248 hiring vs. firing, 247 ー 48 knowing the law, 250 understanding that there are no certainties, 249 HTML software, 26 lacobucci, Dawn, 240 "if it's not tested, it's broken," 75 lmprov, 25 individual vs. group action, 187 InfoPath vs. blogreaders, 29 lnformation At Your Fingertips, 26 information overload, 32 lnform programming language,

The Best Software Writing I. Selected and Introduced by Joel Spolsky


300 INDEX performance measurement, 157 performance ranking team development, 158 Perl programming, 101 permalinks, 29 Peters, Chris, 174 Pfeffer, Jeffrey, 169 PHP, 27 Pilgrim, Mark, 114 Plato BBS system, 185 pomt-to-polnt t 、 vo-way 151 , commumcation, pre-lnternet, 185 political influences lll software success, 171 ー 72 PowerPoint, why it's bad, 262 , 264 Probst, Larry, 65 Processing programnung language, 79 ー 81 product development schedule overruns, 145 product/program managers, 144 professional VS. amateur programming, 135 programmers lnterestlng work as motivation for, 98 , 101 management of, 97 , 101 and money, 97 productivity of, 97 vs. real world in pictures, 17 values Of as basis for software, 40 programmmg precislon vs. flexibility, 27 programming language as medium Of expression, 99 programming language b00k trends, 267 programming style as required language syntax, 27 , 6 punctuation in, 269 ー 70 programs as aesthetic objects, 80 Python executable pseudocode, 73 and great programming, 95 , 98 syntax, 72 use Of whitespace, 1 quality costs, getting programming right, 137 Raikes, Jeff, 174 ranking, 0f employees, 159 RDF, 27 reading programming code aloud for understanding, 269 ー 70 Representational State Transfer (REST), 86 ー 87 reqmrement for verSIOn control and bug tracking tools, 143 responsive SOft 、 sales success factors, 234 customer commumty support, 242 customer product awareness, 235 demo availability, 240 making web buying easy, 243

The Best Software Writing I. Selected and Introduced by Joel Spolsky


web Store success factors, 24374 why product improvement vs. , 231 sound, revealed through CSound language, 81 span Of influence measurement, 168 spreadsheet as software example, 25 sprezzatura (art Of making it lOOk easy), 91 Stallman, Richard, 107 Starbucks and two-phase commit, 120 ー 21 , 123 static vs. dynamic type checking Java, 70 overview, 67 , 69 Perl, 69 Python, 69 Stone, Sandy, 37 strong testing, 76 strong typing for compiler business policy checking, structural typing (latent type checking), 71 style wars, 2 ー 4 , 6 suboptimization as employee demotivator, 162 success due t0 flexibility, 41 Swing, 32 syntax and style rules, 27 , 6 68 team forward velocity, 149 teamwork vs. employee ranking, 160 technical writing, 267 INDEX 303 technological leverage and productivity, 97 technology for needs of people, 35 ways to make work for people, 44 tester performance measurement example of bogus bug, 154 metrics don't work, 151 number Of bugs metric doesn't work, 153 number Of bugs reported metrrc, 153 ー 55 performance measurement VS. evaluation, 155 testing for cost of style, 5 ー 6 TeX programming language, 83 Thomas Edisons rn society, 96 tOOl choice as motivation for great programmers, 98 t001S as a social choice, 98 Torvalds, Linus, 107 tragedy 0f the commons, 29 , 215 ー 16 Trojan Horse technology, C + + as, 129 ー 31 , 133 Trout, Jack, 240 Tufte, Edward R. , 262 , 264 Turing Game, 37 Turkle, Sherry, 37 two-phase commit and customer service, 119 type casting and checking Java example, 71 Python example, 72 Python extended example, 74 type checking in Smalltalk and VBA, 67

The Best Software Writing I. Selected and Introduced by Joel Spolsky


costs deployment of web apps vs. desktop apps, 116 0f programming style differences, 27 , 6 0f programming upgrades, 136 technology conversion, 115 Craigslist, 218 crunch time, 59 ー 61 , 63 ー 65 CSound programming language, Cunningham, Ward, 126 Curtis, Pavel, 193 customer servlce and outsourcing, 10 and sales, 225 and software design, 120 data converslon nightmares, 17 Deming, W.. Edwards, 159 desktop applications vs. web based programming, 111 , 114 , 116 developers. See hiring developers development design vs. programming, 9 outsourcing model, 10 ー 11 and overtlme, 59 programmer productivity, Fred Brooks, 97 required tools, 143 role of innovation, 13 ー 14 tools, 143 verslon control and bug tracking, 143 web as the future, 112 ー 15 INDEX 295 DigitaI MiIIennium Copyright Act (DMCA), 53 ー 54 , 55 DMCA (Digital Millennium Copyright Act), 53 ー 54 , 55 documents, importance Of, 141 duck typing (structuraltyping), 71 duplo programming, 104 dynamic type checking, 67 , 68 ea—spouse, 59 ー 65 ease Of use factor, application interfaces, 113 ー 14 Electronic Arts, employee working hours policies, 59 ー 61 , 63 ー 65 Electronic Word, The, 91 elegant programming, 80 email, as multiple commumcatlon pattern software, 186 embrace, extend, extinguish strategy of C + + , 129 ー 31 , 133 employees employee law, Nolo Press, 250 evaluation t001 , balanced scorecards as, 166 impossible goals as employee demotivator, 161 ranking and competition, 160 engrneerrng management bitching as communrcation, 147 career planning, 147 company/job sucks, 147 development tools, 143 lmportance Of documents, 14172

The Best Software Writing I. Selected and Introduced by Joel Spolsky


Martin, Robert, 76 Mason, Chris, 175 Measure UP technique, 168 membership in groups, SOft 、 vare consequences, 188 merit pay as moral crusher, 159 Microsoft internal decision making, 172 juvenile critlclsm 0f, 135 programmers criticized unfairly, requirement, 54 ー 55 , 57 Notice and Takedown, ISP N010 Press, 250 network flaming, 214 Netscape, 112 netiquette, 214 Nelson, Graham, 80 199 natural and supernatural grace, Brooks, 97 MythicaI Man Month, Fred software, 41 multi-use SOCial simulation lnternet, 36 , 37 multiple personalities and the MP3 trading, 54 programmers, 97 motlvation for great Morris, Robert, 103 , 106 money, programmers and, 97 mobile phone content as value Microsoft Windows search, 7 motivation, 100 understanding of hacker 135 , 31 INDEX 299 Nucor SteeI employee compensation, 167 0 offshoring. S ビ ビ outsourcing online persona, mamtallllng single, 37 O'ReiIIy, CharIes, 169 organizational COSt Of programmmg upgrades, 136 outsourcrng design VS. manufacturing ln software development, 9 false predictions, 9 future Of software outsourcing companies, 15 lack Of management control, 9 lOSt Of innovatlon and creativity, 11 no value added, 9 operational effectiveness VS. strategy, 11 recent history for software outsourcing, 10 software design vs. assembly, 13 successful chocolate bOX example, 12 overtlme 、 vork in programmmg, 59 ー 61 paradox of groups, 188 passion in programming, 126 ー 27 pay for performance compensation, 159 Pepys weblog, 196

The Best Software Writing I. Selected and Introduced by Joel Spolsky


298 INDEX interesting 、 as motlvation for great programmers, 98 , 101 interface design, 212 lnternet pseudonyms and psychological multiple personalities, 37 interoperability of C and C + + , 129 ー 31 , 133 intrinSIC motlvatlon, role in programming performance, Joy, Bill, 198 job sucks, 147 ー 49 Java programming, 95 , 98 lto, Joi, 196 163 Kotler, Philip, 239 Kleiner, Art, 201 KISS principle, 24 kill file (bozo filter), 214 Kernighan, Brian, 267 Kaycee Nicole, 205 Kay, Alan, 107 Kawasaki, Guy, 171 Kaminski, Pete, 196 6 K&R C programming style, 2 ー 4 , C/C + + , 129 ー 31 , 133 language compatibility and online group, 193 LambdaMOO, Xerox PARC labor practices, 59 ー 61 , 63 ー 65 Lanham, Richard, 91 latent type checking (structural typing), 71 Lawrence, 工 E. , 33 learning from experience, 173 ー 80 Lerman, Julia, 251 LiveJournal, group interactlon software example, 207 logical tradition vs. rhetorical tradition, 91 marketing vs. sales, 225 developers, 17 marketing department, why not programmers, 97 , 101 management Of great mailing lists, 212 what Mac-Like means, 179 virtual memory problems, 177 version 5.0 , 173 Pyramid project, 174 program thrashing, 179 175 and problems with Mac OS, how code swappmg works, 178 problems, 176 grammar checker technical 174 feature parity with WordPerfect, defining styles in, 180 68K Classic Mac OS, 176 Mac Word, 171 , 173 285 ー 86 what's important), 271 , 273 , lucky stiff, author (satire on productivity, 96 low-tech vs. high tech