pull/2/head
Oliver Kennedy 2023-10-30 10:00:15 -04:00
parent dc6d087af4
commit fe979782a3
Signed by: okennedy
GPG Key ID: 3E5F9B3ABD3FDB60
7 changed files with 100 additions and 5 deletions

View File

@ -357,3 +357,28 @@ task :demoday do
end
end
file "artifacts/okennedy.bib" do
File.open("artifacts/okennedy.bib", "w+") do |fh|
LabMetadata.publications_for("Oliver Kennedy")
.each do |pub|
fh.puts LabMetadata.bibtex_for(pub)
end
end
end
file "artifacts/okennedy.ris" do
File.open("artifacts/okennedy.ris", "w+") do |fh|
LabMetadata.publications_for("Oliver Kennedy")
.filter do |pub|
case LabMetadata.complete_venue(pub)["type"]
when "demo", "panel" then false
else true
end
end
.each do |pub|
fh.puts LabMetadata.ris_for(pub)
end
end
end
task :bib => ["artifacts/okennedy.bib", "artifacts/okennedy.ris"]

View File

@ -1,10 +1,32 @@
[
{ "title" : "STTR Phase 1: Curating Uncertainty for Reliable Exploitation and Collaboration (CURE-C)",
"agency" : "NASA",
"role" : "PI",
"amount" : 149560,
"effort" : "50%",
"status" : "accepted",
"start" : "08/01/2023", "end" : "07/30/2024",
"type" : "grant",
"commitment" : {
"by_year" : {
"2024" : 1,
}
},
"collaborative" : [
{ "institution" : "Illinois Inst. Tech.",
"pis" : ["Stefan Mueller", "Boris Glavic"],
"amount" : 0
}
],
"projects" : ["vizier"],
"summary" : "Microkernel notebooks replace the single kernel in traditional computational notebooks with separate, isolated processes. This proposal integrates work in programming languages, resource prediction, and database systems to improve the performance of microkernel notebooks, and to provide higher-quality fine-grained provenance over imperative code."
},
{ "title" : "Collaborative Research: IIS: MEDIUM: Microkernel Notebooks",
"agency" : "NSF: IIS: III: MEDIUM",
"role" : "PI",
"amount" : 493935,
"effort" : "100%",
"status" : "submitted",
"status" : "rejected",
"start" : "08/15/2023", "end" : "08/14/2027",
"type" : "grant",
"commitment" : {
@ -29,7 +51,7 @@
"role" : "Co-PI",
"amount" : 1200000,
"effort" : "20%",
"status" : "submitted",
"status" : "rejected",
"start" : "09/01/2023", "end" : "08/31/2028",
"type" : "grant",
"commitment" : {
@ -56,7 +78,7 @@
"role" : "PI",
"amount" : 750000,
"effort" : "20%",
"status" : "submitted",
"status" : "rejected",
"start" : "02/01/2023", "end" : "01/31/2024",
"type" : "grant",
"commitment" : {

View File

@ -29,6 +29,7 @@
"year" : 2023,
"projects" : ["vizier"],
"length" : 19,
"volume" : 10,
"urls" : {
"paper" : "https://www.frontiersin.org/articles/10.3389/fmed.2023.1076794/full?field=&journalName=Frontiers_in_Medicine&id=1076794"
}

View File

@ -2,6 +2,7 @@
"fullname" : "Proceedings of the VLDB Endowment",
"type" : "journal",
"selectivity" : {
"2023" : 0.248, // source: VLDB Keynote; 1074 submit / 266 accept
"2019" : 0.1891, // source: VLDB Keynote; 677 submit / 128 accept
"2015" : 0.213, // source: VLDB Keynote; 710 submit / 151 accept (+ 21 rollover)
"2013" : 0.195, // source: http://digitalpiglet.org/research/

View File

@ -282,6 +282,50 @@ module LabMetadata
(n.map { |n| "#{n[0]}." } + [last]).join(" ")
end
def LabMetadata.pubmed_abbreviation(name)
n = name.split(/ +/)
last = n.pop
last + " " + n.map { |n| n[0] }.join("")
end
def LabMetadata.ris_for(pub)
fields = []
venue = LabMetadata.complete_venue(pub)
fields.push(["TY",
case venue["type"]
when "journal" then "JOUR"
when "conference", "workshop", "abstract" then "CONF"
when "thesis" then "THES"
when "techreport" then "RPRT"
when "chapter" then "CHAP"
when "patent" then "PAT"
else raise "Unknown pub type for RIS: '#{venue["type"]}' (in #{pub["title"]})"
end
])
pub["authors"].each do |au|
au = au.split(" ")
last = au.pop
first = au.shift
first = ([first] + au.map { |n| n[0]+"." }).join(" ")
fields.push(["AU",
"#{last}, #{first}"
])
end
fields.push(["PY", venue["year"].to_s])
fields.push(["TI", pub["title"]])
fields.push(["T2", venue["fullname"]])
if venue["type"] == "journal" then
if pub.include? "pages"
pages = pub["pages"].split("-+")
fields.push(["SP", pages[0]])
fields.push(["EP", if pages.size > 1 then pages[1] else pages[0] end])
end
fields.push(["VL", pub["volume"].to_s])
end
fields.push(["ER", ""])
fields.map { |tag,value| "#{tag} - #{value}" }.join("\n")
end
def LabMetadata.person_name(full, args = {})
person = LabMetadata.data_for(full)
person = {} if person.nil?

View File

@ -1,5 +1,5 @@
---
redirect: 2022fa/index.html
redirect: https://cse.buffalo.edu/courses/cse250/
title: CSE 250 - Data Structures
---

View File

@ -13,7 +13,9 @@ title: Courses
</p>
<ul>
<li><a href="cse-250/2022fa/index.html" style="font-size: 150%">Fall 2022</a></li>
<li><a href="https://cse.buffalo.edu/courses/cse250/" style="font-size: 150%">Fall 2023</a></li>
<li><a href="cse-250/2022fa/index.html">Fall 2022</a></li>
<li><a href="cse-250/2021fa/index.html">Fall 2021</a></li>
</ul>