diff --git a/app_dev.py b/app.py similarity index 100% rename from app_dev.py rename to app.py diff --git a/data/list_of_authors.md b/data/list_of_authors.md new file mode 100644 index 0000000000000000000000000000000000000000..e1c741ea043e9de4eadc0a13af00d8d3fdee5747 --- /dev/null +++ b/data/list_of_authors.md @@ -0,0 +1,35 @@ +| 1997 | Eric Steven Raymond | The Cathedral and the Bazaar |3930|Open|[www.unterstein.net](http://www.unterstein.net/su/docs/CathBaz.pdf)| +|2001|D.M. Nichols, K.Thomson and S.A.Yeates|Usability and open-source software development|42|Paid|[acm.org](https://dl.acm.org/citation.cfm?id=2331822)| +|2002| N.Frishberg,A.M. Dirks, C.Benson, S. Nickell, S. Smith|Getting to know you: open source development meets usability|44|Open|[researchgate.net](https://www.researchgate.net/publication/221514637_Getting_to_know_you_open_source_development_meets_usability)| +|2002|Peter Trudelle|Shall We Dance? Ten Lessons Learned from Netscape's Flirtation with Open Source UI Development|16|Open|[iol.ie](http://www.iol.ie/~calum/chi2002/peter_trudelle.txt)| +|2003|D.M. Nichols, M.B Twidale|The Usability of Open Source Software|249|Open|[firstmonday.org](http://firstmonday.org/article/view/1018/939)| +|2004|C Benson, M Muller-Prove, J Mzourek|Professional Usability in Open Source Projects: GNOME, OpenOffice.org, NetBeans|78|Paid|[acm.org](https://dl.acm.org/citation.cfm?id=985991&dl=ACM&coll=DL&CFID=589697071&CFTOKEN=94517988)| +|2005|E. Golden, B. E. John, L. Bass|The Value of a Usability-Supporting Architectural Pattern in Software Architecture Design: A Controlled Experiment|45|Open|[cmu.edu](https://www.cs.cmu.edu/~bej/usa/publications/GoldenJohnBassICSE2005.pdf)| +|2006|M. S. Andreasen, H.V. Nielsen, S.O. Schrøder, J. Stage|Usability In Open Source Software Development: Opinions And Practice|44|Open|[itc.ktu.lt](http://www.itc.ktu.lt/index.php/ITC/article/view/11776/6440)| +|2006|Reitmayr, E., Balazs, B., Mühlig, J.|Integrating Usability with Open Source Software Development: Case Studies from the Initiative OpenUsability|5|Open|[psu.edu](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.108.6223&rep=rep1&type=pdf#page=71)| +|2007|Mark Aberdour|Achieving Quality in Open Source Software|141|Paid|[acm.org](https://dl.acm.org/citation.cfm?id=1262594)| +|2007|N. Viorres, P. Xenofon, M. Stavrakis, E. Vlachogiannis, P. Koutsabasis, J. Darzentas|Major HCI Challenges for Open Source Software Adoption and Development|24|Open|[researchgate.net](https://www.researchgate.net/publication/225140256_Major_HCI_Challenges_for_Open_Source_Software_Adoption_and_Development)| +|2007|M. Bødker, L. Nielsen, R.N. Orngreen|Enabling User Centered Design Processes in Open Source Communities|23|Open|[researchgate.net](https://www.researchgate.net/publication/221096187_Enabling_User_Centered_Design_Processes_in_Open_Source_Communities)| +|2007|G.Çetin, D.Verzulli, S.Frings|An Analysis of Involvement of HCI Experts in Distributed Software Development: Practical Issues|31|Open|[researchgate.net](https://www.researchgate.net/publication/221097945_An_Analysis_of_Involvement_of_HCI_Experts_in_Distributed_Software_Development_Practical_Issues)| +|2008|Matthew Paul Thomas|Why Free Software has poor usability, and how to improve it|7|Open|[web.archive.org](https://web.archive.org/web/20090625141639/http://mpt.net.nz/archive/2008/08/01/free-software-usability)| +|2009|H.Hedberg and N.Iivari|Integrating HCI Specialists into Open Source Software Development Projects|14|Open|[springer.com](http://link.springer.com/chapter/10.1007%2F978-3-642-02032-2_22#page-1)| +|2009|Paula M. Bach|Supporting the user experience in free/libre/open source software development|4|Open|[psu.edu](https://etda.libraries.psu.edu/paper/9880/5184)| +|2009|Paula M. Bach, R.DeLine, and J.M. Carroll|Designers wanted: participation and the user experience in open source software development|32|Paid|[acm.org](https://dl.acm.org/citation.cfm?id=1518852&dl=ACM&coll=DL&CFID=589697071&CFTOKEN=94517988)| +|2009|Paula M. Bach and John M. Carroll|FLOSS UX Design:An Analysis of User Experience Design in Firefox and OpenOffice.org|13|Open|[http://flosshub.org/](http://flosshub.org/system/files/Floss%20UX%20Desing.pdf)| +|2010|Paula M. Bach, M.Twidale|Social Participation in Open Source: What it Means for Designers|8|Paid|[acm.org](https://dl.acm.org/citation.cfm?doid=1744161.1744177)| +|2010|A.Raza and L.F.Capretz|Contributors' preference in open source software usability: An empirical study|6|Open|[Cornell Uni Library](http://arxiv.org/pdf/1507.06882.pdf)| +|2012|A.Raza and L.F.Capretz|Do open source software developers listen to their users|4|Open|[researchgate.net](https://www.researchgate.net/publication/287955808_Do_open_source_software_developers_listen_to_their_users)| +|2013|M.Rajanen and N.Iivary|Open Source and Human Computer Interaction Philosophies in Open Source Projects: Incompatible or Co-Existent?|4|Open|[oulu.fi](http://cc.oulu.fi/~mrajanen/MindTrek2013_rajanen_iivari.pdf)| +|2013|Benjamin M. Hill and Andrés Monroy-Hernández|The cost of collaboration for code and art: evidence from a remixing community|14|Open|[arxiv.org](https://arxiv.org/pdf/1507.01297.pdf)| +|2015|M.Rajanen, N.Iivari and A.Lanamäki|Non-response, Social Exclusion, and False Acceptance: Gatekeeping Tactics and Usability Work in Free-Libre Open Source Software Development|3|Open|[oulu.fi](http://cc.oulu.fi/~mrajanen/INTERACT2015_rajanen_iivari_lanamaki.pdf)| +|2015|M.Rajanen and N.Iivary| Examining Usability Work and Culture in FOSS|1|Open|[oulu.fi](http://cc.oulu.fi/~mrajanen/OSS2015_rajanen_iivari.pdf)| +|2015|Mikko Rajanen & Netta Iivari|Power, Empowerment and Open Source Usability|4|Paid|[dl.acm.org](http://dl.acm.org/citation.cfm?id=2702441)| +|2015|Michelle W. Purcell|Technology-In-Practice and its Influence on User Involvement in OSS 2.0 Projects|0|Open|[ideals.illinois.edu](https://www.ideals.illinois.edu/bitstream/handle/2142/73751/450_ready.pdf?sequence=2&isAllowed=y)| + +## Research + + +| Year | Author | Title |Type |Acceess |Link | +| :----: |:--------|:--------------------------------|:-----:|:-----|:----| +| 2011 | Jan-Christoph Borchardt| Usability in Free Software|Thesis|Open|[jancborchardt.net](http://jancborchardt.net/usability-in-free-software)| +|2017|Jan Dittrich|A beginner's guide to finding user needs |Book|Open|[jdittrich.github.io](https://jdittrich.github.io/userNeedResearchBook/)| diff --git a/data/trainingDats.p b/data/trainingDats.p new file mode 100644 index 0000000000000000000000000000000000000000..bcfafe243556aae9ac9cfa57a72ab8931457201b Binary files /dev/null and b/data/trainingDats.p differ diff --git a/discoverbloat.py b/discoverbloat.py index aa35c7a4b44e3681eec46d5e40ff6b9781f47f0c..ad9cfe024969cdbfc74cbaa52119ad273aacfa6a 100644 --- a/discoverbloat.py +++ b/discoverbloat.py @@ -30,9 +30,16 @@ import click from typing import List, Any from science_access.t_analysis import not_want_list -not_want_list.extend(["link","librarian","issue","abstract","science","cookie","publication"]) -from science_access.online_app_backend import call_from_front_end,ar_manipulation, update_web_form_full_text +not_want_list.extend( + ["link", "librarian", "issue", "abstract", "science", "cookie", "publication"] +) + +from science_access.online_app_backend import ( + call_from_front_end, + ar_manipulation, + update_web_form_full_text, +) from science_access.enter_author_name import ( @@ -69,7 +76,7 @@ rd_labels = rd_df["Origin"] rd_level = rd_df["Reading_Level"] max = np.max(rd_df["Reading_Level"]) -#rd_df = rd_df.loc[sample(list(rd_df.index), 999)] +# rd_df = rd_df.loc[sample(list(rd_df.index), 999)] rd_df = rd_df.loc[sample(list(rd_df.index), 999)] rd_df = rd_df[(rd_df["Reading_Level"] > 0)] @@ -79,8 +86,8 @@ with open("data/trainingDats.p", "rb") as f: biochem_labels = art_df["Origin"] bio_chem_level = art_df["Reading_Level"] -#@st.cache(suppress_st_warning=True) -def check_cache(author_name: str,verbose=0): # ->Union[] +# @st.cache(suppress_st_warning=True) +def check_cache(author_name: str, verbose=0): # ->Union[] with shelve.open("fast_graphs_splash.p") as db: flag = author_name in db if not flag: @@ -92,7 +99,7 @@ def check_cache(author_name: str,verbose=0): # ->Union[] # caching wont scale on heroku. # need TinyDb on Amazon ## - if len(db.keys())<11: + if len(db.keys()) < 11: db[author_name] = { "ar": ar, "scraped_labels": scraped_labels, @@ -112,23 +119,27 @@ def check_cache(author_name: str,verbose=0): # ->Union[] scraped_labels = temp["scraped_labels"] - #experimental = [ + # experimental = [ # np.mean([a["standard_len"], a["ndc"]]) # for a in ar # if "standard_len" in a.keys() - #] + # ] return ar, author_score, scraped_labels -def show_hardest_passage(ar:List=[])->str: + +def show_hardest_passage(ar: List = []) -> str: largest = 0 li = 0 - for i,a in enumerate(ar): - if a["standard"]>largest: + for i, a in enumerate(ar): + if a["standard"] > largest: largest = a["standard"] - li=i + li = i if "hard_snippet" in ar[i].keys() and ar[i]["hard_snippet"] is not None: st.markdown("A hard to read passage from the authors work.") - if str("can log in with their society credentials") not in ar[i]["hard_snippet"]: + if ( + str("can log in with their society credentials") + not in ar[i]["hard_snippet"] + ): if len(ar[i]["hard_snippet"]): if "semantic" in ar[i].keys(): st.error(ar[i]["hard_snippet"]) @@ -149,16 +160,17 @@ def clouds_big_words(sci_corpus): ) big_words, word_counts_fz, fig_wl = art_cloud_wl(sci_corpus) -verbose=0 -#def main(): + +verbose = 0 +# def main(): # st.title("Search Reading Complexity of an Author") # author_name = st.text_input("Enter Author Name:") # st.markdown("""Entering a middle initial followed by ```.``` can change the accuracy of results.""") # st.markdown("""Eg. Sayali S```.``` Phatak""") -NAME = author_name="Brian H. Smith" +NAME = author_name = "Brian H. Smith" if author_name: - ar, author_score, scraped_labels = check_cache(author_name,verbose) + ar, author_score, scraped_labels = check_cache(author_name, verbose) if "ar" in locals(): df_author, merged_df = data_frames_from_scrape( ar, author_name, scraped_labels, author_score, art_df @@ -181,11 +193,11 @@ if "ar" in locals(): ) st.write(fig_art) - #df_concat_art = pd.concat([art_df, df_author]) - #fig_art = px.box( + # df_concat_art = pd.concat([art_df, df_author]) + # fig_art = px.box( # df_concat_art, x="Origin", y="Reading_Level", points="all", color="Origin" - #) - #st.write(fig_art) + # ) + # st.write(fig_art) df0 = df_concat_art st.markdown( @@ -223,13 +235,13 @@ if "ar" in locals(): grab_set_auth.extend(paper["tokens"]) artset = list(grab_setr) artset.extend(not_want_list) - #auth_set = grab_set_auth - #exclusive = [i for i in grab_set_auth if i not in artset] + # auth_set = grab_set_auth + # exclusive = [i for i in grab_set_auth if i not in artset] fig = fast_art_cloud(grab_set_auth) hard = show_hardest_passage(ar) st.markdown("-----") - #fast_art_cloud(sci_corpus) + # fast_art_cloud(sci_corpus) clouds_by_big_words = True if clouds_by_big_words: grab_set_auth = [] @@ -238,7 +250,7 @@ if "ar" in locals(): grab_set_auth.extend(paper["tokens"]) sci_corpus = create_giant_strings(grab_set_auth, not_want_list) clouds_big_words(sci_corpus) - #except: + # except: # pass if verbose: @@ -298,16 +310,15 @@ if "ar" in locals(): # st.markdown('Here is one of the biggest words: "{0}", you should feed it into PCA of word2vec'.format(str(big_words[0][0]))) st.markdown("-----") - #st.markdown("\n\n") + # st.markdown("\n\n") # inclusive = [i for i in autset if i in artset] - #st.markdown( + # st.markdown( # "### Concepts that differentiate {0} from other science".format( # author_name # ) - #) - #exclusive = create_giant_strings(ar, exclusive) - + # ) + # exclusive = create_giant_strings(ar, exclusive) if "reading_time" in ar[0].keys(): average_reading_time = [np.mean([r["reading_time"] for r in ar])] @@ -343,9 +354,7 @@ if "ar" in locals(): ) st.markdown("-----") st.markdown("\n") - st.markdown( - "[Code Author: Russell J. Jarvis](https://github.com/russelljjarvis/)" - ) + st.markdown("[Code Author: Russell J. Jarvis](https://github.com/russelljjarvis/)") st.markdown( "[Source Code: Github](https://github.com/russelljjarvis/ScienceAccess)" @@ -374,8 +383,8 @@ if "ar" in locals(): Kutner M, Greenberg E, Baer J. National Assessment of Adult Literacy (NAAL): A First Look at the Literacy of America’s Adults in the 21st Century (NCES 2006-470). Washington, DC: National Center for Education Statistics; 2005. """ - #st.markdown("-----") + # st.markdown("-----") -#if __name__ == "__main__": +# if __name__ == "__main__": # main()