投稿時間:2021-12-05 02:24:26 RSSフィード2021-12-05 02:00 分まとめ(27件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
python Pythonタグが付けられた新着投稿 - Qiita tkinterで表・ボタン・時間表示 https://qiita.com/michitaka523/items/252421e16442eff93965 2021-12-05 01:15:27
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) 2以上の値を返す関数(サブルーチン)の一つだけを使って select-caseで使えるようにしたい https://teratail.com/questions/372286?rss=all 以上の値を返す関数サブルーチンの一つだけを使ってselectcaseで使えるようにしたい質問の背景受信専用のgoroutineを作って、forselectcaseを使って各種の受信の多面待ちを行いたいと思っております。 2021-12-05 01:43:44
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) 【Wordpress】カスタムフィールドLinkタイプ分岐について https://teratail.com/questions/372285?rss=all 【Wordpress】カスタムフィールドLinkタイプ分岐について前提・実現したいことWordpressのカスタムフィールドAdvancednbspCustomnbspFieldsプラグインで、リンクをつけた時とつけてない時で分岐を分けたいと思っております。 2021-12-05 01:41:42
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) Discord.jsでチャンネルIDをチャンネル名で代用することは可能ですか? https://teratail.com/questions/372284?rss=all DiscordjsでチャンネルIDをチャンネル名で代用することは可能ですか前提・実現したいことチャンネルIDをチャンネル名で代用できないでしょうかもし代用できるのであればどうすれば良いのか教えてください。 2021-12-05 01:37:13
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) 複数のスペクトルから共通のピークを抽出する方法 https://teratail.com/questions/372283?rss=all 遺伝的アルゴリズム 2021-12-05 01:34:51
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) vscodeでindex.ejs上のコードを書くときに予測変換を出したい https://teratail.com/questions/372282?rss=all vscodeでindexejs上のコードを書くときに予測変換を出したい下記画像indexhtml上のようにnbspindexejs上でもdivと入力すると予測変換が出て、nbsp→nbspltdivgtltdivgtとなるようにしたい。 2021-12-05 01:23:27
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) plファイルを保存したい https://teratail.com/questions/372281?rss=all plファイルを保存したいPerlではじめるプログラミング超入門高橋純子著を使用してPerlの勉強を行っています。 2021-12-05 01:07:44
Program [全てのタグ]の新着質問一覧|teratail(テラテイル) publicで宣言しているのに他のはアタッチできるのに一つだけできません https://teratail.com/questions/372280?rss=all タイトルの通りですが、publicnbspで宣言しているのにUNITYからプレファブの割り当てをしたいのですが、アタッチができません。 2021-12-05 01:01:41
Linux Ubuntuタグが付けられた新着投稿 - Qiita 初学者にlinuxのroot環境をオンラインで提供したので備忘録 https://qiita.com/YomogiBeta/items/eb144231a6516c8b1c8e 初学者にlinuxのroot環境をオンラインで提供したので備忘録きっかけローカルコミュニティの初学者の方々に少しでもlinuxに触れてほしいという思いから、今回の行動に至りました。 2021-12-05 01:45:53
Docker dockerタグが付けられた新着投稿 - Qiita 初学者にlinuxのroot環境をオンラインで提供したので備忘録 https://qiita.com/YomogiBeta/items/eb144231a6516c8b1c8e 初学者にlinuxのroot環境をオンラインで提供したので備忘録きっかけローカルコミュニティの初学者の方々に少しでもlinuxに触れてほしいという思いから、今回の行動に至りました。 2021-12-05 01:45:53
GCP gcpタグが付けられた新着投稿 - Qiita GoogleCloud 認定資格 Professional Cloud Architectを受験してみた https://qiita.com/takaHAL/items/187ea4cc07e71e744b9e 結果としてPCAを受験することでGCPのサービスについて調べるだけでなく付随して様々な知識を得ることができましたし、実務でも実際非常に役に立ってきていると感じます。 2021-12-05 01:21:34
海外TECH MakeUseOf 6 Signs It's Time to Replace Your Mac https://www.makeuseof.com/tag/4-signs-time-replace-mac/ machow 2021-12-04 16:30:12
海外TECH DEV Community Build a Mini Buymeacoffee dApp Using Solidity + Ethereum Smart Contract + ReactJs + TailwindCSS https://dev.to/olanetsoft/build-a-mini-buymeacoffee-dapp-using-solidity-ethereum-smart-contract-reactjs-tailwindcss-26j5 Build a Mini Buymeacoffee dApp Using Solidity Ethereum Smart Contract ReactJs TailwindCSSBlockchain is typically one of the highest paying programming industries with developers earning between and per year on average as salaried employees Sound interesting right To learn more about a developer roadmap and how to get started Check here In this article we will Build a Mini Buymeacoffee dAPP Using Solidity Ethereum Smart Contract ReactJs and tailwind CSS It ll be a platform where anyone on the internet can learn a little about us and send us money to purchase coffee a note with the information being kept on the blockchain via an Ethereum smart contract A smart contract is essentially code that stays on the blockchain and can be read and written from we ll go over this in more detail later We ll create the smart contract and deploy it We will also build a website that will allow people to connect their wallets and engage with our smart contract Here is a link to the Live Demo and the GitHub Repositories Frontend and Backend Smart Crontract PrerequisiteLet us ensure we have Node NPM installed on our PC If you don t have it head over here to for a guide Project Setup and InstallationNext let s head over to the terminal We ll need to cd into the directory we wish to work with and then run the following commands mkdir mini buymeacoffee becd mini buymeacoffee benpm init ynpm install save dev hardhatNow we should have a hardhat Let s get a sample project going by running the command below npx hardhatWe ll go with the option of creating a sample project Accept all requests Installing hardhat waffle and hardhat ethers is required for the sample project These are some of the other things we ll be using later Just in case it didn t do it automatically we will install these other requirements npm install save dev nomiclabs hardhat waffle ethereum waffle chai nomiclabs hardhat ethers ethersTo make sure everything is working run npx hardhat testWe will see a passed test result in our console It is now possible for us to Delete sample test js from the test folder Delete sample script js from the scripts directory as well After that go to contracts and delete Greeter sol The folders themselves should not be deleted Next under the contracts directory we ll create a file called CoffeePortal sol When using Hardhat file layout is really crucial so pay attention We re going to start with the basic structure of every contract SPDX License Identifier UNLICENSEDpragma solidity import hardhat console sol contract CoffeePortal constructor payable console log Yo Smart Contract To build and deploy our smart contract navigate to the scripts folder create a new file called run js and update it with the following code snippet const main async gt This will actually compile our contract and generate the necessary files we need to work with our contract under the artifacts directory const coffeeContractFactory await hre ethers getContractFactory CoffeePortal const coffeeContract await coffeeContractFactory deploy await coffeeContract deployed We ll wait until our contract is officially deployed to our local blockchain Our constructor runs when we actually deploy console log Coffee Contract deployed to coffeeContract address const runMain async gt try await main process exit catch error console log error process exit runMain Let s run it npx hardhat run scripts run jsYou should see something similar to what we have below We have a working smart contract Let us deploy it to a network by making it available to everyone worldwide Under the scripts folder create a file called deploy js Here s the code for it It looks super similar to run js const main async gt const deployer await hre ethers getSigners const accountBalance await deployer getBalance console log Deploying contracts with account deployer address console log Account balance accountBalance toString const Token await hre ethers getContractFactory CoffeePortal const portal await Token deploy await portal deployed console log CoffeePortal address portal address const runMain async gt try await main process exit catch error console error error process exit runMain Now the command below we re going to deploy locally using the localhost network for test npx hardhat run scripts deploy js network localhostWe should have something similar to what we have below Building and Deploying CoffeeContract to BlockchainEverything is now in place including the test script and the deploy js file With the following code snippet we ll update the Smart Contract run js and deploy js files contracts CoffeePortal sol Update scripts run js Update scripts deploy js Now it s time to get down to business deploying to the real blockchain We ll need to sign up for an Alchemy account before we can deploy to the blockchain Alchemy basically allows us to broadcast our contract creation transaction so that miners can pick it up as soon as possible The transaction is then broadcasted to the blockchain as a legitimate transaction once it has been mined After that everyone s copy of the blockchain is updated We ll create an app as shown below after signing up Remember to change the network selection to Rinkeby because that s where we ll be deploying We switched it from mainnet to Rinkeby for a reason Because it s real money and it s not worth squandering We ll start with a testnet which is a clone of mainnet but utilizes fictitious money so we can experiment as much as we like However it s crucial to note that testnets are operated by genuine miners and are designed to simulate real world conditions Afterward we will need to grab our keys as shown below and store them for later use We ll need some fake ETH in our testnet account and we ll have to request some from the network This fake ETH can only be used on this testnet Rinkeby can get some phony ETH by using a faucet NameLinkAmountTimeMyCryptoNoneBuildspacedEthilywOfficial Rinkeby h d dTable by BuildspaceOur hardhat config js file needs to be updated This can be found in the smart contract project s root directory require nomiclabs hardhat waffle require dotenv config This is a sample Hardhat task To learn how to create your own go to task accounts Prints the list of accounts async taskArgs hre gt const accounts await hre ethers getSigners for const account of accounts console log account address You need to export an object to set up your config Go to to learn more type import hardhat config HardhatUserConfig module exports solidity networks rinkeby url process env STAGING ALCHEMY KEY accounts process env PRIVATE KEY If we look at the code snippet above we can see that some keys were read from the env file as well as the import at the top of require dotenv config which implies we ll need to install the dotenv package and also create a env file using the command below npm install D dotenvtouch envInside the env file add the following keys STAGING ALCHEMY KEY Add the key we copied from the Alchemy dashboard herePRIVATE KEY Add your account private key hereTo get our account private key is easy check out this post Now we can run the command to deploy our contract to a real blockchain networknpx hardhat run scripts deploy js network rinkebyHere s what our output should look like Yay we just deployed our contract Set up Frontend React ClientIt s time to get our website up and running Our smart contract is completed but we need to figure out how our front end can interact with it as soon as possible To create a new project we use the npx create next app e with tailwindcss command to scaffold a new project in a directory of our choice This command creates a Next js project with TailwindCSS set up TailwindCSS is a utility first CSS framework packed with classes to help us style our web page To install the dependencies we use the commands cd lt project name gt npm install ethers react toastifyOnce the app is created and the dependencies are installed we will see a message with instructions for navigating to our site and running it locally We do this with the command npm run devNext js will start a hot reloading development environment accessible by default at http localhost We need to connect our wallet to the blockchain in order for our website to communicate with it Our website will have permission to call smart contracts on our behalf after we connect our wallet to our website Remember it s the same as logging into a website All of our work will be done in index js which can be found under pages We need to import abi and update our contractAddress in the code sample above Let s start by creating a folder named utils then using the following command to create a file called CoffeePortal json inside the utils folder mkdir utilstouch CoffeePortal jsonFollowing that we ll need our contract address as well as the content that will be updated in the CoffeePortal json file What s the best way to get it Let s go back to the smart contract project we worked on before then navigate to artifacts contracts coffeePortal json and copy the entire content inside it as well as our contract address which was displayed in our terminal when we deployed our contract to the blockchain We will update the CoffeePortal json file with what we copied and also update index js as shown below import Head from next head Import abiimport abi from utils CoffeePortal json export default function Home Create a variable here that holds the contract address after you deploy const contractAddress Add contract address here return lt div className flex flex col items center justify center min h screen py gt lt div gt Its time to test our app we should have something similar to what we have below when we visit http localhost Next clicking connect wallet button should redirect us to the MetaMask UI where we will grant the site access as shown below Then our UI should look similar to what is shown below We can now support by buying a coffee worth and also providing our name and any preferred message to the owner Next Completed Another coffee support If we observe the page updates in real time once a transaction is completed this is the result of the event we introduced to our smart contract and React of course effortlessly updates the UI ConclusionIn this article we learned how to build a mini buymeacoffee dAPP using solidity ethereum smart contract react and tailwind CSS ReferencesEthereumFullstack DappCover PhotoI d love to connect with you at Twitter LinkedIn GitHub PortfolioSee you in my next blog article Take care 2021-12-04 16:42:44
海外TECH DEV Community Security and Authentication in MongoDB https://dev.to/thenerdydev/security-and-authentication-in-mongodb-22k4 Security and Authentication in MongoDBHey guys In this article let us understand about Security and Authentication in MongoDB We will understand the security aspect from the perspective of developers and NOT for the database admins This article was first published on Check the website for more interesting articles and tutorials on Web Development What are the most important parts for securing the mongodb database Security ChecklistFor hardening the Mongo Environment and making sure that it is safe and cannot be tampered from outside we need a security checklist Authentication and AuthorizationThe database that we will be using to store data and users will know the users and your code will have to authenticate as a database in order to get data update data and do all kinds of stuffs with the data that you get back It is the most important building block for securing your MongoDB environment Another important building block is the Transport Encryption Transport EncryptionThis means the data that you sent from your app to the server should be encrypted so that no MAN IN THE MIDDLE attack can compromise your credentials Encryption at RestThis means that the data in the database also should be encrypted otherwise if someone somehow gets access to your database servers well they can then read plain text information easily So it is a must to store the data in the database in the encrypted format as well AuditingThis is the pure server admin task and not the concern for the developer but Mongodb provides auditing to servers to see who did what and what actions occurred so that you can control and are aware of what is happening inside the database Server amp Network Config and SetupAdditionally the server on which you run database server like physical machine that is running somewhere or the cloud provider like AWS the instances that we book there the network that you are using for hosting your Mongo Server should also be secure Backups and Software UpdatesAs an owner of the database environment you should regularly take backup of your data The softwares that you are running should be up to date Let us talk about the below three in great detail Authentication and Authorization Transport Encryption Encryption at Rest Understanding the Role Based Access Control Authentication and AuthorizationAuthentication is all about identification of the users in the databaseComing to Authorization Authorization is all about what these users may actually do in the database MongoDB employs the Role Based Access Control System Let us say we have the MongoDB server with three databases Admin database which is the special database that exists out of the box Blog database Shop database Authentication can be enabled in a very easy way and suddenly MongoDBs server only allows access to the authenticated users Let us considered a user like some data analyst software developer who directly connects with our shell or say we have the app code that uses the driver to connect to the database The analyst or developer is NOT a user of your application not the user of the web application that you are building and we now need to login to the MongoDB Server With our username and password we can do that since authentication was enabled that means user needs to exist on the MongoDB server otherwise the login of the user will not be possible Now say we get loggedin but we have no rights to do anything The users in MongoDB are not just entities that are made up of username and passwords but they are also assigned some roles and these roles are basically the group of the privileges A privilege is a combination of the resource and the action A resource would be something like the products collection in the Shop database and an action would be an insert command for example to insert a product for example in our products collection Actions are basically the task commands that we can do in our MongoDB database and resources define what resources we can access based on the access privileges that we are granted Typically multiple privileges are grouped into something called as the ROLES That means a user has a role and that role includes all the privileges holding actions and resources that makes sense for this user This is the model that MongoDB uses since it is the most flexible model that Mongo has defined for its userbase This allows us to create multiple owners where we can give every user exactly the rights that every user needs We do not want to give every user all the rights because if we give all rights to any unauthorized person then they may do something malicious with our database which they were not designated to do Different types of database usersAdmin A real person who needs to be able to manage the database configuration and create users etc create new databases create new collections The admin would need to be required to be work with data in the database He does not need to be able to insert or fetch data Developer A developer needs to be able to insert delete update or fetch data all the CRUD operations that we discussed The developer is not responsible for creating the users and manage the database configurations This is not your job and the app code should not be able to do that Data Scientist A data scientist needs to be able to fetch the data He she does not need to be able to create users manage the database configuration or insert edit delete update the data His sole responsibility is to work with large amounts of data and derive valuable insights that are important for an organization Working with large dataset along with strong analytic skills are a must for a data scientist CREATING A USERLet us learn about creating and editing a user in MongoDB Users are created by a user with special permissions with thecreateUser command You then create the user with a username and the password This user will have a couple of roles or atleast one role and each role will then contain a bunch of privileges A user is created on the database This does not limit the access of the user to that authentication database But this is the database against which the user will have to authenticate The exact rights the user has depends on the role that you have assigned to the user If we have the need we can also updateUser command this means the admin can update the user that means for example we can use this to change the password mongod auth We can also make use of the command db auth username goes here password goes here for signing up the user We can also connect by writing mongo u usernamesgoeshere p passwordgoeshere But what if we don t have a user to begin with MongoDB has a special solution which is called the localhost exception More on this can be read here You are allowed to create one user who then can be allowed to create more users For this you need to switch to the admin database and run the command use admin Then create a userdb createUser user alex pwd alex roles userAdminAnyDatabase Built in RolesMongoDB ships with a bunch of built in roles to cover most of the use cases that you may require You can also create your own roles but that is pure admin task We got a typical role for the users of the database Database userread readWriteYou also got typical admin roles like the dbAdmin userAdmin dbOwner All database roles readAnyDatabase readWriteAnyDatabase userAdminAnyDatabase dbAdminAnyDatabaseBesides these roles we also have the cluster administration Clusters are the concept where you have multiple MongoDB servers working together So that you can have multiple machines running MongoDB servers and store your data which can then work and scale together And managing this cluster of servers is ofcourse a meaningful task clusterManager clusterMonitor hostManager clusterAdmin Backup Restore roles backup restore SuperUser Roles dbOwner admin userAdmin admin userAdminAnyDatabase root the most powerful role root superuser can do everything ASSIGNING ROLES TO USERS AND DATABASESRun this command using the credentials of the created user mongo authenticationDatabase admin u usernamegoeshere p passwordgoesheredb createUser user appdev pwd dev roles readWrite Successfully added user user appdev roles readWrite We can now authenticate in that user with the following command db auth appdev dev This gives This signal indicates that this works Adding SSL Transport Encryption Transport EncryptionWe have our application and this could be Node Django PHP application that uses the MongoDB driver to communicate with MongoDB Server to store the data and ofcourse it is important that the data is encrypted whilst it is in transport so that someone who is spoofing our connection can not read our data and MongoDB has everything for that built into it How we can secure our data whilst it is own its way from client to the server To encrypt the data whilst it is in transport MongoDB uses SSL or actually TLS for encryption and uses public private key pair to decrypt this information on the server and to prove to the server to prove that who we are It is secure way of encrypting our data and decrypting our data on the server While its own its way it is consistently updated ENCRYPTION AT RESTThe data which is stored on our MongoDB Server in a file this ofcourse might also be encrypted so that we can decrypt there two different things The overall storage feature built in for enterprise versions The thing as a developer you can do is to encrypt certain values in your code For example if you are storing the user password you should hash that password and not store the plain text you can go so far for all data you always have a way for encrypting that So you can encrypt both your data as well as the overall file storage to achieve max security that is possible Here are some of the important links that you must reference to know more about Security and Authentication in MongoDB Official Encryption at Rest Docs Official Security Checklist What is SSL TLS gt Official MongoDB SSL Setup Docs Official MongoDB Users amp Auth Docs Official Built in Roles Docs Official Custom Roles Docs So this is it for this article Thanks for reading If you enjoy my articles consider following me on Twitter for more interesting stuff Twitter 2021-12-04 16:39:11
海外TECH DEV Community Debug Docker PHP Project on PHPStorm using Xdebug https://dev.to/pimenvibritania/debug-docker-php-project-on-phpstorm-using-xdebug-224f Debug Docker PHP Project on PHPStorm using Xdebug My First ArticleIn this article I will share my debugging experience with Xdebug on PHP development environment in Docker but before going any further I assume you are familiar with Docker Docker Compose and using PHPStorm as your IDE PreparationThis my structure code I put all of configuration for docker inside docker folder but what conf we need for now is only nginx nginx confphp conf d php inidocker compose ymlDockerfileBelow is all my configuration nginx nginx confserver listen server name web error log var log nginx error log access log var log nginx access log error page index php root var www public location php try files uri fastcgi pass app fastcgi index index php include fastcgi params fastcgi param SCRIPT FILENAME document root fastcgi script name fastcgi param SERVER NAME server name fastcgi param SERVER NAME host location try files uri uri index php query string gzip static on DockerfileFROM php fpmADD usr local bin RUN apt get update amp amp apt get install y git curl zip nano vim unzipRUN chmod x usr local bin install php extensions amp amp install php extensions gd xdebug pdo mysqlRUN docker php ext install pdo pdo mysqlRUN php r copy composer setup php RUN php composer setup php install dir filename composerRUN mv composer usr local bin COPY var www WORKDIR var wwwEXPOSE docker compose ymlversion services app build context dockerfile Dockerfile image myapp php container name myapp restart always working dir var www volumes var www php conf d php ini usr local etc php php ini tmp xdebug tmp xdebug nginx image nginx alpine container name mywebserver restart always ports volumes var www nginx etc nginx conf dphp conf d php iniYou just copy default php ini and add these line of xdebug conf and remember your xdebug idekey value Xdebug xdebug mode debug tracexdebug client host docker for mac host internalxdebug client port xdebug idekey dockernote host docker internal for linux Let s debuggingI hope your container runs without any problems then now we are going to configure PHPStorm Here we want to configure our PHP docker interpreter a Go to Preferences gt PHP add new interpreter select new interpreter from Docker vagrant etc b Create new Server c After selecting an Interpreter we are going to map our working project with container path my working project path is HOME DOO api docker and I will map into var www so change the Docker container value d This the result Xdebug configuration a Go to Preferences gt PHP gt Debug set like this b Go to Preferences gt PHP gt Debug gt Dbgp Proxy set like this note IDE Key must same with the value of xdebug idekey on php ini c Go to Run gt Edit Configurations create a new PHP Remote Debug configuration d Go to Run gt Web Server Debug Validation on Path to create validation script I point the value into my public path of project and URL to validation script I point to my nginx docker host EXECUTE a Set breakpoint and turning on Start Listening for PHP Debug Connection b Go to Run gt Debug then select the configuration what we made earlier PHP Remote Debug c Go to your endpoint and add query string with parameter XDEBUG SESSION START and the value is your IDE Key then execute Taraaaaa 2021-12-04 16:22:00
Apple AppleInsider - Frontpage News Sonoma State University to hand iPads to students in spring 2022 https://appleinsider.com/articles/21/12/04/sonoma-state-university-to-hand-ipads-to-students-in-spring-2022?utm_medium=rss Sonoma State University to hand iPads to students in spring Sonoma State University will be providing students joining the campus in the spring term iPads and accessories as part of an expansion of the California State University s CSUCCESS program First year and transfer students joining SSU for the spring term will be eligible to receive a technology bundle including an iPad Air Apple Pencil and Apple Smart Keyboard The bundle will be provided for use by the students throughout their entire undergraduate experience The package is being provided as an expansion of the CSUCCESS California State Univeristy Connectivity Contributing to Equity and Student Success initiative which aims to provide up to students in the California State University system with the iPads Read more 2021-12-04 16:56:15
海外TECH Engadget NASA will give SpaceX more crewed flights to cover for Boeing's delays https://www.engadget.com/nasa-adds-spacex-flights-due-to-boeing-starliner-delay-164503658.html?src=rss NASA will give SpaceX more crewed flights to cover for Boeing x s delaysBoeing s continued Starliner delays have prompted NASA to hedge its bets SpaceNewsreports NASA plans to order as many as three more crewed SpaceX flights to ensure quot uninterrupted quot US trips to the International Space Station as soon as The company s Crew Dragon is the only system that meets partner country and safety requirements in the necessary time window the agency said In other words NASA doesn t want to be without a ride to the ISS if Boeing isn t ready NASA was happy Boeing was focusing on quot safety over schedule quot for Starliner after it delayed a second orbital test to investigate an oxidizer isolation valve problem However that still left the administration in a bind It was quot critical quot to obtain additional flights now to maintain a US foothold on the ISS associate administrator Kathy Lueders said This doesn t put Boeing s capsule in danger NASA still wanted two different crew systems to guarantee redundancy and it planned to alternate between Crew Dragon and Starliner once both were available Officials also stressed that the deal didn t prevent NASA from changing the contract to obtain additional flights Even so the intended purchase is a blow for Boeing Starliner plays a key role in Boeing s commercial spaceflight program and unofficially serves as proof the transportation veteran can compete with a fast moving newcomer like SpaceX in the private space race The Crew Dragon backup plans reflect some lost confidence in Boeing even if the move is only temporary 2021-12-04 16:45:03
海外TECH Engadget Hitting the Books: How the interplay of science and technology brought about iPhones https://www.engadget.com/hitting-the-books-genesis-of-technoscientific-revolutions-narayanmurti-tsao-harvard-press-163025911.html?src=rss Hitting the Books How the interplay of science and technology brought about iPhonesScientific research and technological advancement have gone hand in hand since the invention of the wheel Without research we lack the knowledge base to advance the state of technology and without technological advancement we lack the functional base for further scientific exploration In their new book The Genesis of Technoscientific Revolutions Harvard University Professor of Technology and Public Policy Venkatesh Narayanamurti and Sandia National Laboratories Senior Scientist Jeffrey Y Tsao explore the symbiotic relationship between these two concepts and how their interaction might be modulated to better serve the rapidly accelerating pace of st century technoscientific discovery Harvard University PressExcerpted from THE GENESIS OF TECHNOSCIENTIFIC REVOLUTIONS RETHINKING THE NATURE AND NURTURE OF RESEARCH by VENKATESH NARAYANAMURTI AND JEFFREY Y TSAO published by Harvard University Press Copyright by the President and Fellows of Harvard College Used by permission All rights reserved The Network Is Hierarchical The Nesting of Questions and AnswersThe way in which scientific and technological knowledge are hierarchical stems from the nesting discussed in the last chapter both of scientific facts and explanations and of technological functions and the forms that fulfill them Harvard University PressIn science at the top of the hierarchy are facts ーraw patterns in observed phenomena These patterns can be thought of as questions Why does a particular pattern occur Why when one releases a ball does the ball fall and fall faster the farther it has fallen Explanations of those raw patterns come a level below in the hierarchy and can be thought of as answers to those questions Galileo s sixteenth century explanation of the observed distance versus time pattern was that the velocities of falling balls increase linearly with time But this answer or explanation becomes itself another question Why do the velocities of falling balls increase linearly with time This question begs a deeper explanation a deeper answer Newton s explanation was that gravity is a force that uniform forces cause uniform acceleration and that uniform acceleration causes linear increases in velocity Scientific understanding is always incomplete of course so there is always a point at which we have no deeper explanation This in no way detracts from the power of the explanations that do exist science seeks proximate whys but does not insist on ultimate whys The general theory of relativity explains Newton s laws of gravity even if its own origin is yet to be explained In technology at the top of the hierarchy are human desired functions These functions present problems that are solved by forms below them in the hierarchy Forms fulfill functions but those forms present new problems that must be solved at successively deeper levels Shifting from the problem solution nomenclature to the equivalent question answer nomenclature we can say that the iPhone represented a technological question How do we create an Internet capable cellular phone with a software programmable interactive display A partial answer came in the form of multi touch capacitive surfaces opening up a significant design space for user interaction when multiple fingers are used simultaneously But the opaqueness of existing multitouch surfaces itself became a question How do we make multi touch surfaces transparent so that the display is visible The multi touch transparent surface display provided an answer In other words science and technology are both organized into hierarchies of question and answer pairs with any question or answer having two “faces One face pointing downward in the hierarchy represents a question to an answer just below it in the hierarchy The other face pointing upward in the hierarchy represents an answer to a question just above it in the hierarchy We emphasize that our depiction of questions as “above answers and answers as “below questions is arbitrary ーit does not signify relative importance or value but is simply intended to be consistent with common usage In science an explanation is deeper and more “foundational than the fact it explains especially if it generalizes to explanations of many other facts Special relativity is in that sense deeper than the constancy of c because it answers the question of why c is constant it also answers the question of how much energy is released during nuclear fission and fusion In technology forms are deeper and more “foundational than the functions they fulfill especially if they have been adapted to fulfill many other functions The multi touch transparent surface display is more foundational than the iPhone because it not only helps answer the question of how to create the iPhone but also helps answer the question of how to create human interactive displays in general Rubber is more foundational than a bicycle tire because it not only helps answer the question of how to create a bicycle tire but also helps answer the question of how to create a myriad of other kinds of tires The Network Is Modular Facilitating Exploitation and ExplorationClosely related scientific questions and answers are organized into what we might call scientific domains which we will refer to as scientific knowledge modules Closely interacting technological problems and solutions are organized into engineered components which we will refer to as technological knowledge modules Harvard University PressClosely related scientific questions are often answerable within a scientific knowledge domain or scientific knowledge module drawing on multiple subdomains nested within the larger domain A question related to some electron transport phenomenon in a particular semiconductor structure lies in the broad domain of semiconductor science but the answer might require an integrated understanding of both the subdomain of electron transport physics as well as the subdomain of the materials science of the synthesized structure The subquestion associated with electron transport physics might require an integrated understanding of the subdomain of electrons in various kinds of structures bulk materials heterojunctions nanostructures coupled nanostructures and of the sub subdomains of interactions of electrons with phonons in those structures The subquestion associated with the materials science of the synthesized structure might require an understanding of the sub subdomains of substrates and epitaxy thin films or post materials synthesis fabrication In other words we can think of scientific knowledge domains as a modular hierarchy and think of its subdomains as submodules and sub submodules Closely related technological problems likewise are often solved by key technological components or technological knowledge modules perhaps integrating multiple subcomponents nested within the larger components An iPhone is a component itself composed of many subcomponents and each subcomponent is similarly subdivided We can think of the “problem of the iPhone as a component that is “solved by its subcomponents ーan enclosure a display a printed circuit board a camera and input output ports We can think of the “problem of a printed circuit board as a subcomponent that is “solved by sub components that include low power integrated circuit chips Conversely an iPhone is also a component that is itself nested in a hierarchy of use functions An iPhone might be used as a solution to the problem of “running a text messaging app a text messaging app might be used as a solution to the problem of sending a mass text message to a friend group the mass text message might be used as a solution to the problem of organizing the friend group into a protest in Times Square and the protest in Times Square might be part of a solution to the problem of organizing a wider social movement for some human desired social cause One might ask Why is scientific and technological knowledge modular They are modular because they are complex adaptive systems ーsystems sustained by and adapted to their environment by complex internal changes ーand virtually all complex adaptive systems are modular Simon Complex adaptive systems both exploit their environments and explore their environments to improve that exploitation Modularity enables efficiency both in the exploitation of existing knowledge about the environment and exploration of that environment to create new knowledge 2021-12-04 16:30:25
海外TECH WIRED A Planned Parenthood LA Hack Affects 400,000 Patients https://www.wired.com/story/planned-parenthood-la-hack-predictive-policing-ubiquiti security 2021-12-04 16:10:18
ニュース BBC News - Home Indonesia volcano: Dozens injured as residents flee huge ash cloud from Mt Semeru https://www.bbc.co.uk/news/world-asia-59532251?at_medium=RSS&at_campaign=KARANGA cloud 2021-12-04 16:34:46
ニュース BBC News - Home Covid: Doctors' leaders back postponed health checks https://www.bbc.co.uk/news/uk-59533750?at_medium=RSS&at_campaign=KARANGA people 2021-12-04 16:13:34
ニュース BBC News - Home Covid-19 in the UK: How many coronavirus cases are there in my area? https://www.bbc.co.uk/news/uk-51768274?at_medium=RSS&at_campaign=KARANGA cases 2021-12-04 16:45:49
ビジネス ダイヤモンド・オンライン - 新着記事 冷蔵庫に、肉も魚もない! そんな時、どんな 主菜が作れるか? - ぽんこつ主婦の高見えごはん https://diamond.jp/articles/-/288916 冷蔵庫に、肉も魚もないそんな時、どんな主菜が作れるかぽんこつ主婦の高見えごはんフォロワー約万人の料理インスタグラマー「ぽんこつ主婦」こと橋本彩さんの、おかず、おつまみ、副菜までレシピが掲載されたレシピ本「ぽんこつ主婦のいつもの食材でパパっと“高見えレシピ」が発売即重版に鶏むね肉、豚こま肉、サバ缶、卵、豆腐……など、お財布にも優しい食材で、おいしいのはもちろん、見映えもよい、ひとひねりしたレシピが超簡単に作れると話題です。 2021-12-05 01:45:00
ビジネス ダイヤモンド・オンライン - 新着記事 キラリと光る接客と残念な接客では、何がどう違うのか? - これだけできれば大丈夫!接客1年生 https://diamond.jp/articles/-/289447 2021-12-05 01:40:00
ビジネス ダイヤモンド・オンライン - 新着記事 モノを「コンパクト化」して 部屋にスぺ―スを生み出す 4つの方法 - これが最後の片づけ! https://diamond.jp/articles/-/289381 2021-12-05 01:35:00
北海道 北海道新聞 米ロ首脳、7日にオンライン会談 ウクライナ問題協議へ https://www.hokkaido-np.co.jp/article/619249/ 米大統領 2021-12-05 01:04:00
海外TECH reddit [Jennie Gow] Fuel leak for Bottas in FP3 means the team have had to change his PU for qualifying. He will now run another from his pool so no penalty. . https://www.reddit.com/r/formula1/comments/r8ss9y/jennie_gow_fuel_leak_for_bottas_in_fp3_means_the/ Jennie Gow Fuel leak for Bottas in FP means the team have had to change his PU for qualifying He will now run another from his pool so no penalty submitted by u glenn to r formula link comments 2021-12-04 16:08:14

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)